Spring Boot 邮件服务

本文将介绍如何通过 SpringBoot 发送邮件。

一、发送简单邮件

1. 获取邮件服务器信息

登录邮件,获取邮件服务器的登录方式。

此处以 outlook 为例:

2. 引入依赖

在 pom.xml 中添加依赖如下:

1
2
3
4
<dependency> 
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>

3. 添加邮箱配置

1
2
3
4
5
6
spring.mail.host=smtp.office365.com
spring.mail.port=587
spring.mail.properties.mail.smtp.starttls.required=true # 设置为TLS认证
spring.mail.username=用户名
spring.mail.password=密码
mail.fromMail.addr=邮箱地址

4. 编写 mailService 类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
@Service
public class MailService {

private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired
private JavaMailSender mailSender;

@Value("${mail.fromMail.addr}")
private String from;

public void sendSimpleMail(String to, String subject, String content) {
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom(from);
message.setTo(to);
message.setSubject(subject);
message.setText(content);

try {
mailSender.send(message);
logger.info("邮件已发送");
} catch (Exception e) {
logger.error("发送邮件时发生异常!", e);
}

}

}

5. 发送简单邮件

1
mailService.sendSimpleMail("目标邮箱地址", "主题", "正文");

6. 发送结果

参考