使用Spring Mail发送邮件
阅读 9
对于企业级开发来说,发送邮件是一个不可或缺的功能,本篇讲讲如何使用Spring Mail来发送邮件。
首先,需要引入依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>其次,在 application.yml 中配置发件箱的信息:
mail:
host: smtp.feishu.cn
port: 465
username: alarm@your_company.com
# 注意:邮箱后台开启 SMTP 服务后生成的“授权码”
password: some_password
protocol: smtp
default-encoding: UTF-8
properties:
mail:
smtp:
auth: true
ssl:
enable: true这里以飞书的邮箱为例,飞书的host为:smtp.feishu.cn。
要注意几点:
- 一定要开通 IMAP/SMTP 服务(在飞书邮件管理后台页面)
- 复制 IMAP/SMTP 密码,配置到上面的 password 中
- SMTP 端口号为465,记得设置ssl.enabled为true
OK,到这里,配置信息就完成了。
最后,就是写代码进行发送邮件:
@Autowired
private MailSender mailSender;
public void sendMail() {
try {
var message = new SimpleMailMessage();
message.setFrom("alarm@demo.com");
message.setTo("foo@demo.com");
message.setSubject("【系统告警】检测到异常行为");
message.setText(String.format("原因: %s\n触发时间: %s",
"恶意请求接口", LocalDateTime.now()));
mailSender.send(message);
} catch (Exception e) {
log.error("邮件发送失败", e);
}
}上面发送的是纯文本,所以,new了一个SimpleMailMessage对象。如果要发送格式美观的 HTML 内容和附件等,可以参考
最后编辑于: 2026-04-15