email工具类使用及设置

日常生活中,经常遇到这种情况,在注册新账号时,网站会要求输入邮箱,并且注册成功后会发一封邮件到你的邮箱,点击邮件中的链接后账号才能够激活并使用,

网站商家有这两个目的,一是辨别恶意操作,二是定向推广,有了你邮箱就方便给你发广告。下面介绍一种开发中常用的邮箱验证工具类

①完整邮箱发送代码:

 1 package com.didinx.filter;
 2 
 3 import org.apache.commons.mail.EmailException;
 4 import org.apache.commons.mail.HtmlEmail;
 5 import org.junit.jupiter.api.Test;
 6 
 7 /**
 8  * @author o_0sky
 9  * @date 2019/2/12 13:35
10  */
11 public class emailtsk {
12     @Test
13     public void testMail() throws EmailException {
14         //创建HtmlEmail对象,封装邮件发送参数
15         HtmlEmail htmlEmail = new HtmlEmail();
16         //设置邮件服务器地址
17         htmlEmail.setHostName("smtp.163.com");
18         //设置你的邮箱账号和第三方使用邮件授权码
19         htmlEmail.setAuthentication("xxx@163.com", "lin123");
20         //设置收件人,多个收件人的话,此语句多写几次
21         htmlEmail.addTo("xxx@163.com","新注册用户");
22         //htmlEmail.addTo("xxx@163.com","test");
23         //设置发件信息
24         htmlEmail.setFrom("xxx@163.com","【博客园】");
25         //设置邮件编码 (网易邮箱解码为gb2312)
26         htmlEmail.setCharset("gb2312");
27         //设置邮件主题
28         htmlEmail.setSubject("【博客园注册激活邮件】");
29         //设置邮件正文
30         htmlEmail.setMsg("<h2>恭喜你,注册成功!</h2>"+
31         "<a href='http://localhost:8080/userServlet?methodName=active&code=123'>请点击链接进行激活</a>");
32        //发送邮件
33         htmlEmail.send();
34      }
35      
36 }
②封装成工具类:
《1》挂载配置文件:

《2》抽取工具类


 1 package com.heima.travel.utils;
 2 
 3 import org.apache.commons.mail.EmailException;
 4 import org.apache.commons.mail.HtmlEmail;
 5 
 6 import java.util.ResourceBundle;
 7 
 8 /**
 9  * @author buguniao
10  * @version v1.0
11  * @date 2019/1/18 17:00
12  * @description 邮件发送相关的工具类
13  **/
14 public class MailUtil {
15 
16     private static String hostname;
17     private static String username;
18     private static String password;
19     private static String charset;
20 
21 
22     //提前加载邮件发送相关的配置信息
23     static {
24         ResourceBundle bundle = ResourceBundle.getBundle("mail");
25         hostname = bundle.getString("hostname");
26         username = bundle.getString("username");
27         password = bundle.getString("password");
28         charset = bundle.getString("charset");
29     }
30 
31 
32     /**
33      * 发送邮件
34      * @param emailTo
35      * @param msg
36      */
37     public static void emeilSend(String emailTo,String msg) throws EmailException {
38 
39         HtmlEmail htmlEmail = new HtmlEmail();
40 
41         //服务器参数
42         htmlEmail.setHostName(hostname);
43         htmlEmail.setAuthentication(username, password);
44         htmlEmail.setCharset(charset);
45 
46         //发件人和收件人
47         htmlEmail.setFrom(username, "【博客园官网】");
48         htmlEmail.addTo(emailTo, "新注册用户");
49 
50         //邮件内容
51         htmlEmail.setSubject("【博客园注册激活邮件】");
52         htmlEmail.setMsg(msg);
53 
54         //发送邮件
55         htmlEmail.send();
56     }
57 
58 
59 
60 
61 
62 
63 
64 
65 
66 
67 
68 }

 



 

posted @ 2019-02-12 14:48  o_osky  阅读(591)  评论(0编辑  收藏  举报