有个功能需要实现发送邮件 所以学习了一下这里做个总结
我使用的是javaxMail所以要引入javax.mail的依赖
在pom.xml中加上依赖:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-email</artifactId>
<version>1.4</version>
</dependency>
接下来上代码:
HtmlEmail email = new HtmlEmail();
try {
// 这里是SMTP发送服务器的名字:163的如下:"smtp.163.com"
email.setHostName("smtp.163.com");
// 字符编码集的设置
email.setCharset("utf-8");
// 收件人的邮箱
email.addTo("收件邮箱@163.com");
// 发送人的邮箱2
email.setFrom("发送邮箱@163.com");
// 如果需要认证信息的话,设置认证:用户名-密码 ***是你开启POP3服务时的 授权码,不是登录密码
email.setAuthenticator(new DefaultAuthenticator("发送邮箱@163.com", "密码"));
// 要发送的邮件主题
email.setSubject("Test");
// 要发送的信息,由于使用了HtmlEmail,可以在邮件内容中使用HTML标签
email.setMsg("测试发送邮件");
// 发送
email.send();
System.out.println("发送成功");
} catch (EmailException e) {
e.printStackTrace();
System.out.println("发送失败");
}
遇到的问题:
1.引入依赖后还是不能使用javaxMail邮件对象
打开项目中的Maven Dependencies 没有发现commons-email的jar包 ,判断未引入
解决:右击项目名->选择maven->update project
2.获取163邮箱的授权码
https://jingyan.baidu.com/article/6f2f55a11c1e0ab5b83e6c6e.html