JavaWeb实现简单用户发送邮件

在实现用户发送邮件之前,我们先对电子邮箱的基本概念做一些了解。

一、电子邮件

1. 邮件服务器

1.要在 Internet 上提供电子邮件功能,必须有专门的电子邮件服务器。
例如:现在 Internet 很多 提供邮件服务的厂商:sina、sohu、163 等等他们都有自己的邮件服务器。
2.这些服务器类似于现实生活中的邮局,它主要负责接收用户投递过来的邮件,并把邮件投 递到邮件接收者的电子邮箱中。
3.邮件服务器,按照提供的服务类型,可以分为发送邮件的服务器我接收邮件的服务器。

2. 电子邮箱

电子邮箱(E-mail 地址)的获得需要在邮件服务器上进行申请 ,确切地说,电子邮箱其实 就是用户在邮件服务器上申请的一个帐户。用户在邮件服务器上申请了一个帐号后,邮件 服务器就会为这个帐号分配一定的空间,用户从而可以使用这个帐号以及空间,发送电子 邮件和保存别人发送过来的电子邮件。

3. 邮件协议

SMTP 协议-发邮件协议

a. 全称为 Simple Mail Transfer Protoco(l 简单邮件传输协议),它定义了邮件客户端软件与 SMTP 服务器之间、以及两台 SMTP 服务器之间的通讯规则。
b. 端口号:25

POP3 协议-收邮件协议

a. 全称为 Post Office Protocol(邮局协议),它定义了邮件客户端软件与 POP3 服务器的通讯规则。
b. 端口号:110

二、 发送邮件

1. 发送邮件的流程

2. 代码实现

package com.store.utils;

import java.util.Properties;

import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMessage.RecipientType;

public class MailUtils {

 public static void sendMail(String email, String emailMsg)
   throws AddressException, MessagingException {
  // 1.创建一个程序与邮件服务器对话对象 Session

  Properties props = new Properties();
  //设置发送的协议
  //props.setProperty("mail.transport.protocol", "SMTP");

  //设置发送邮件的服务器
  //props.setProperty("mail.host", "smtp.126.com");
  //props.setProperty("mail.smtp.auth", "true");//指定验证为true

  //创建验证器
  Authenticator auth = new Authenticator() {
   public PasswordAuthentication getPasswordAuthentication() {
    //设置发件人的账号和密码
    return new PasswordAuthentication("admin", "admin@store.com");
   }
  };

  Session session = Session.getInstance(props, auth);

  // 2.创建一个Message,它相当于是邮件内容
  Message message = new MimeMessage(session);

  //设置发送者
  message.setFrom(new InternetAddress("admin@store.com"));

  //设置发送方式与接收者
  message.setRecipient(RecipientType.TO, new InternetAddress(email)); 

  //设置邮件主题
  message.setSubject("这是我们的第一份邮件");

  //设置邮件内容
  message.setContent("哈哈,你到我的商城注册了", "text/html;charset=UTF-8");

  // 3.创建Transport,用于将邮件发送
  Transport.send(message);
 }
 public static void main(String[] args) throws AddressException, MessagingException {
  MailUtils.sendMail("aaa@store.com", "abcdefg");
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Java Web监听器如何实现定时发送邮件

    首先介绍java定时器(java.util.Timer)有定时执行计划任务的功能,通过设定定时器的间隔时间,会自动在此间隔时间后执行预先安排好的任务(java.util. TimerTask) 由于我们希望当Web工程启动时,定时器能自动开始计时,这样在整个Web工程的生命期里,就会定时的执行任务,因此启动定时器的类不能是一般的类,此处用Servlet的监听器类来启动定时器,通过在配置文件里配置此监听器, 让其在工程启动时自动加载运行,存活期为整个Web工程生命期. 首先要去实现一个监听任务:

  • Java Web stmp发送带附件邮件(附SSL版)

    本文实例为大家分享了Java Web stmp发送带附件邮件的具体代码,供大家参考,具体内容如下 public class MailFileSendUtils { private Properties props; //系统属性 private Session session; //邮件会话对象 private MimeMessage mimeMsg; //MIME邮件对象 private Multipart mp; //Multipart对象,邮件内容,标题,附件等内容均添加到其中后再生成Mi

  • JavaWeb中使用JavaMail实现发送邮件功能实例详解

    现在很多的网站都提供有用户注册功能, 通常我们注册成功之后就会收到一封来自注册网站的邮件.邮件里面的内容可能包含了我们的注册的用户名和密码以及一个激活账户的超链接等信息.今天我们也来实现一个这样的功能,用户注册成功之后,就将用户的注册信息以Email的形式发送到用户的注册邮箱当中,实现发送邮件功能就得借助于JavaMail了. 一.搭建开发环境 1.1.创建Web项目 1.2.用户注册的Jsp页面 register.jsp <%@ page language="java" pag

  • JavaWeb实现邮件发送功能

    基于JavaWeb的邮件发送功能(多附件),供大家参考,具体内容如下 本次学习主要目的是为了测试由QQ邮箱发送到任意一个有效邮箱的功能实现,附带多个附件.学习者可以借鉴其他邮箱的格式,梳理一下要写的内容.项目把文件内容放到了MimeMessage 邮件对象里,其中包含了如发件人.收件人.抄送人.邮件主题.邮件内容.邮件时间和邮件附件等一些内容. 项目中遇到的问题: 1.在执行到 File file = new File("D:\Chat_Software\sky.JPG");时出现错误

  • JavaWeb实现邮件发送接收功能实例解析

    一.邮件开发涉及到的一些基本概念 1.1.邮件服务器和电子邮箱 要在Internet上提供电子邮件功能,必须有专门的电子邮件服务器.例如现在Internet很多提供邮件服务的厂商:sina.sohu.163等等他们都有自己的邮件服务器. 这些邮件服务器类似于现实生活中的邮局,它主要负责接收用户投递过来的邮件,并把邮件投递到邮件接收者的电子邮箱中. 电子邮箱(E-Mail地址)的获得需要在邮件服务器上进行申请,确切地说,电子邮箱其实就是用户在邮件服务器上申请的一个账户,用户在邮件服务器上申请了一个

  • JavaWeb中JavaMail创建邮件和发送邮件

    一.RFC882文档简单说明 RFC882文档规定了如何编写一封简单的邮件(纯文本邮件),一封简单的邮件包含邮件头和邮件体两个部分,邮件头和邮件体之间使用空行分隔. 邮件头包含的内容有: from字段 --用于指明发件人 to字段     --用于指明收件人 subject字段  --用于说明邮件主题 cc字段    -- 抄送,将邮件发送给收件人的同时抄送给另一个收件人,收件人可以看到邮件抄送给了谁 bcc字段 -- 密送,将邮件发送给收件人的同时将邮件秘密发送给另一个收件人,收件人无法看到邮

  • JavaWeb实现简单用户发送邮件

    在实现用户发送邮件之前,我们先对电子邮箱的基本概念做一些了解. 一.电子邮件 1. 邮件服务器 1.要在 Internet 上提供电子邮件功能,必须有专门的电子邮件服务器. 例如:现在 Internet 很多 提供邮件服务的厂商:sina.sohu.163 等等他们都有自己的邮件服务器. 2.这些服务器类似于现实生活中的邮局,它主要负责接收用户投递过来的邮件,并把邮件投 递到邮件接收者的电子邮箱中. 3.邮件服务器,按照提供的服务类型,可以分为发送邮件的服务器我接收邮件的服务器. 2. 电子邮箱

  • JavaWeb简单用户登录注册实例代码(有验证码)

    需求 编写login登录界面(用户名,密码,验证码,登陆按钮,注册按钮) 设计关系数据库(编号,用户名,密码) 编写注册功能,将数据存储在数据库中.(姓名不能重复,设为主键,重复会注册失败) 编写登录功能 .首先获取验证码,先判断验证码是否正确,不正确则显示验证码错误.验证码正确后再获取用户名和密码,进行数据库的搜索比对,若正确则重定向到成功的界面,并且将用户名显示. jar包 技术选型 Servlet + JSP + Mysql + JDBCTemplate + Druid + BeanUti

  • JAVAWEB实现简单的商城项目(一)实例代码解析

     一.项目功能结构 1.功能 2.实体 3.对应sql语句 CREATE DATABASE shop; use shop; create table user( id int(11) primary key auto_increment, username varchar(100), password varchar(100), nickname varchar(100), type int(5) ); INSERT INTO user VALUES (null,'admin','7946521

  • JavaWeb实现简单的自动登录功能

    本文实例为大家分享了JavaWeb实现简单的自动登录功能的具体代码,供大家参考,具体内容如下 用最近所学的知识点实现自动登录,主要有: 1.Filter过滤器 2.session & cookie 一.需求分析 二.准备工作 1. 项目目录 2. 导入相应的jar包 三.代码实现 1. 搭建环境 1.1 搭建数据库.数据库表 数据库[user],数据库表[t_user] 1.2 搭建页面 登录页面[login.jsp] <body> <form action="Logi

  • JavaWeb实现简单文件上传功能

    本文实例为大家分享了JavaWeb实现简单文件上传的具体代码,供大家参考,具体内容如下 1.概述 通常浏览器上传的所有参数,我们可以通过request对象的getParameter , getParameterMap , getParameterValue 这三个方法拿到所有的请求参数,但有一种情况,当强求包含参数包含文件上传时, 这三个方法都失效,无法拿到参数,我们就需要request对象的getInputStream方法获取这些参数, 如何解析这个字节输入流呢?apache 软件基金会: 开

  • SSH框架网上商城项目第25战之使用java email给用户发送邮件

    当用户购买完商品后,我们应该向用户发送一封邮件,告诉他订单已生成之类的信息,邮箱地址是从用户的基本信息中获取,好了,首先我们来看一下java中发送邮件的方法. 1. java中发送email的方法 在完善这个项目之前,先来回顾一下java中是如何发送邮件的,首先肯定需要发送邮件的jar包:mail.jar,导入到lib目录下,好了,下面我们先写一个普通的java程序来回顾一下java email的知识点: public class SendEmailDemo { public static vo

  • PHP实现通过get方式识别用户发送邮件的方法

    本文实例讲述了PHP实现通过get方式识别用户发送邮件的方法.分享给大家供大家参考.具体如下: send_email.php如下: <?php $conn=mysql_connect("localhost","root","admin"); mysql_select_db("songyunb_development",$conn); $id=$_GET["id"]; $sql="insert

  • JavaWeb实现简单查询商品功能

    本文实例为大家分享了JavaWeb实现简单查询商品功能的具体代码,供大家参考,具体内容如下 CustomerServlet.java package com.subing.web; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet

  • jsp实现简单用户7天内免登录

    本文实例为大家分享了jsp实现简单用户7天内免登录的具体代码,供大家参考,具体内容如下 (1)登陆页面:login.jsp <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html> <html> <head> <meta charset="

  • Vue+Spring Boot简单用户登录(附Demo)

    1 概述 前后端分离的一个简单用户登录 Demo . 2 技术栈 Vue BootstrapVue Kotlin Spring Boot MyBatis Plus 3 前端 3.1 创建工程 使用 vue-cli 创建,没安装的可以先安装: sudo cnpm install -g vue @vue/cli 查看版本: vue -V 出现版本就安装成功了. 创建初始工程: vue create bvdemo 由于目前 Vue3 还没有发布正式版本,推荐使用 Vue2 : 等待一段时间构建好了之后

随机推荐