目录
一、导入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
二、application.yml配置
spring:
mail:
host: smtp.qq.com
port: 465
username: 你的qq邮箱
password: 你的qq邮箱授权码
protocol: smtps
default-encoding: UTF-8 #默认编码格式
properties:
mail:
debug: true #启动debug调试
smtp:
socketFactory:
class: javax.net.ssl.SSLSocketFactory #SSL连接配置
Spring Mail的配置信息,用于设置邮件发送相关参数。
host: SMTP服务器的地址,这里使用QQ邮箱的SMTP服务器地址。port: SMTP服务器监听的端口,默认为25,但QQ邮箱SMTP服务器采用SSL加密传输需要使用465端口。username: 发送邮件的邮箱账号,这里填写QQ邮箱的账号。password: 发送邮件的邮箱账号的授权码,用于验证邮箱身份,这里也填写QQ邮箱的账号的授权码。protocol: 使用协议类型,这里选择smtps,即SMTP-over-SSL。default-encoding: 默认编码格式,这里设置为UTF-8。debug: 是否启动调试模式,当设置为true时会打印出更多调试信息。properties: 设定额外的属性,这里设置了mail和smtp两个属性,socketFactory则对应SSL连接所需的类。
三、EmailService代码解读
@Service
public class EmailService {
创建一个名为EmailService的服务类。
@Autowired
private JavaMailSender mailSender;
使用Spring的自动装配(Autowired)特性注入一个JavaMailSender实例作为依赖项。JavaMailSender是用于发送邮件的Spring框架中的接口。
@Value("${spring.mail.username}")
private String from;
使用注释值(Value)来从配置文件中读取属性值,这里指的是spring.mail.username的值并将其变量化成from。
public void sendMail(String to, String subject, String content) throws MessagingException {
在服务类中定义名为sendMail的方法,该方法接收三个参数(to、 subject和content)并且可以抛出MessagingException异常。
MimeMessage message

文章介绍了如何使用SpringBoot集成邮件服务发送验证码,包括配置SMTP服务器、EmailService类的解析、验证码生成工具类VerificationCodeUtils的讲解,以及Controller层处理注册时发送验证码的逻辑。
最低0.47元/天 解锁文章
3793

被折叠的 条评论
为什么被折叠?



