利用工具MailUtils实现邮件的发送,遇到的大坑,高能预警!!

java实现邮件的发送依赖的jar包有两个:mail.jar和activation.jar,我也找到了一个工具包:itcast-tools-1.4.jar,实现原理大家可以查看源码,先放出资源链接

https://pan.baidu.com/s/1jI7GxSi  提取码:aiyc ,来说一下使用说明及注意点

(一定要把jar包导入到工程中)先上源码:

 1 import java.io.IOException;
 2 
 3 import javax.mail.MessagingException;
 4 import javax.mail.Session;
 5 
 6 import org.junit.Test;
 7 
 8 import cn.itcast.mail.Mail;
 9 import cn.itcast.mail.MailUtils;
10 
11 public class TestMailUtils {
12     @Test
13     public void test() throws MessagingException, IOException{
14         /**
15          * 1.登录smtp邮件服务器
16          * 2.创建邮件对象 
17          * 3.发送(session,mail)
18          */
19         //1.
20         Session session =MailUtils.createSession("smtp.163.com", "你的163邮箱名称,不要带@163.com", "授权密码");
21         //2.
22         Mail mail = new Mail("发送邮件的163邮箱,这个要带@163.com", "接收的邮箱", "主题", "<a href='http://www.baidu.com'>百度莆田系医院欢迎你</a>");
23         //3.
24         MailUtils.send(session, mail);
25     }
26 }

其中要说明的是授权密码,这个授权密码不是你的邮箱登录密码,不是邮箱登录密码,不是邮箱登录密码,重要的事情说三遍.那它是什么呢?其实它就是允许别的程序登陆你邮箱的密码,当然网易绝不会把真正的密码给你,所以设置了授权密码

以163邮箱为例:

 先登录要发送邮件的163邮箱,在设置中找到SMTP

查看SMTP是否开启,如果没有开启就要开启

在你设置的过程中会出现让你填写授权密码,这个授权密码就是你要在代码中要填写的密码,当然也可以在这里设置

这时就设置好,我们就可以用授权密码登录邮箱发送邮件了.

原文地址:https://www.cnblogs.com/losedMemory/p/6286140.html