跳到主要内容
版本:3.5.10

发送电子邮件

QWen Max 中英对照 Sending Email

Spring Framework 通过使用 JavaMailSender 接口提供了发送电子邮件的抽象,而 Spring Boot 也为其提供了自动配置以及一个 starter 模块。

提示

有关如何使用 JavaMailSender 的详细说明,请参阅参考文档

如果 spring.mail.host 以及相关库(由 spring-boot-starter-mail 定义)可用,并且当前不存在 JavaMailSender,则会自动创建一个默认的 JavaMailSender。该发送器可以通过 spring.mail 命名空间下的配置项进一步自定义。更多详情请参见 MailProperties

特别是,某些默认的超时值是无限的,你可能希望将其修改,以避免线程被无响应的邮件服务器阻塞,如下例所示:

spring.mail.properties[mail.smtp.connectiontimeout]=5000
spring.mail.properties[mail.smtp.timeout]=3000
spring.mail.properties[mail.smtp.writetimeout]=5000

也可以使用来自 JNDI 的现有 Session 来配置 JavaMailSender

spring.mail.jndi-name=mail/Session

当设置了 jndi-name 时,它将优先于所有其他与 Session 相关的设置。