Springboot 实现发送邮件功能,使用QQ邮箱
引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
<version>2.1.1.RELEASE</version>
</dependency>
配置文件
mail:
host: smtp.qq.com
port: 465
username: 你的邮箱
password: qq 邮箱生成的授权码***(下文介绍如何获取)***
default-encoding: utf-8
properties:
mail:
smtp:
ssl:
enable: true #一定要开启ssl,不然会503 验证失败的
功能实现
@Autowired
private JavaMailSender javaMailSender;
@Value("${spring.mail.username}")
private String sender;
@Async
@Override
public void sendMail(String to, String subject, String content) {
logger.debug(sender);
SimpleMailMessage mailMessage=new SimpleMailMessage();
mailMessage.setFrom(sender);
mailMessage.setTo(to);
mailMessage.setSubject(subject);
mailMessage.setText(content);
try {
javaMailSender.send(mailMessage);
}catch (Exception e){
e.printStackTrace();
System.out.println("发送简单邮件失败");
}
}
测试
@Autowired
private EmailService emailService;
@Test
public void contextLoads() {
emailService.sendMail("[email protected]","你好呀","你的网站做的好棒嗒");
logger.debug("发送成功");
}
如何获取授权码
进去后点击服务
**
生成授权码,注意,一定要保存
**