SpringBoot的JavaMailSender(邮件发送)接口使用
Spring为邮件发送功能提供了一个很好的接口JavaMailSender,同时SpringBoot也为此提供了相应的自动化配置
依赖引用:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
配置文件的配置
//邮箱smtp/pop3地址
spring.mail.host=smtp.163.com
//邮箱用户
spring.mail.username=邮箱用户名 so****@163.com
//注意这里的密码并不是你邮箱的密码,而是开启smtp/pop3的授权码
spring.mail.password=邮箱密码
/*以下选用
spring.mail.default-encoding=UTF-8
properties:
mail:
smtp:
# 需要验证登录名和密码# auth: true
starttls:
# 需要TLS认证 保证发送邮件安全验证
enable: true
required: true
*/
在发送邮件时,通过 SmpleMailMessage 类来简单配置出一个邮件信息,使用JavaMailSender来发送邮件:
@Autowired
private JavaMailSender mailSender;
@RequestMapping("/send")
public void sendMail(){
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom("so****@163.com");
message.setTo("239****@qq.com");
message.setSubject("it is a test for spring boot");
message.setText("你好,我是小黄,我正在测试发送邮件。");
try {
mailSender.send(message);
logger.info("小黄的测试邮件已发送。");
} catch (Exception e) {
logger.error("小黄发送邮件时发生异常了!", e);
}
}