1. 首先我们要开启邮箱的 POP3/SMTP服务
可以看到我这里已经开启,流程是开启的时候会让你发送一条短信验证,之后验证成功会生成一串秘钥,秘钥待会我们是需要用到的。
2. 引入maven 依赖
org.springframework.boot spring-boot-starter-mail
3.yml 文件中配置
spring:
# 邮件服务
mail:
# 配置 SMTP 服务器地址
host: smtp.qq.com
# 发送者邮箱
username: xxxxxx@qq.com
# 配置密码,注意不是真正的密码,而是刚刚申请到的授权码
password: xxxxxxxxxx
# 端口号465或587
port: 587
default-encoding: utf-8
# 配置SSL 加密工厂
properties:
mail:
smtp:
socketFactoryClass: javax.net.ssl.SSLSocketFactory
#表示开启 DEBUG 模式,这样,邮件发送过程的日志会在控制台打印出来,方便排查错误
debug: true
3.在业务代码中使用
import java.util.Date;
@Service
public class EmailServiceImpl implements IEmailService {
@Autowired
private JavaMailSender javaMailSender;
@Override
public void sendSimpleMail(String sendFrom, String[] sendTo, String subject, String sendText) {
// 构建一个邮件对象
SimpleMailMessage message = new SimpleMailMessage();
// 设置邮件主题
message.setSubject(subject);
// 设置邮件发送者,这个跟application.yml中设置的要一致
message.setFrom(sendFrom);
// 设置邮件接收者,可以有多个接收者,中间用逗号隔开,以下类似
//message.setTo("10*****16@qq.com","12****32*qq.com");
message.setTo(sendTo);
// 设置邮件发送日期
message.setSentDate(new Date());
// 设置邮件的正文
message.setText(sendText);
// 发送邮件
javaMailSender.send(message);
}
}
这里只是发送一个简单的邮件,若需要复杂可以找相关文档查看即可。



