1、第一步首先引入坐标
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-mail -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
<version>2.7.4</version>
</dependency>
2、打开你的SMTP服务
这里我用的是新浪的邮箱
1、首先登录你的新浪邮箱
2、点击设置
3、点击客服端
4、开启你的smtp服务
3、配置文件
#进行邮件功能的配置
spring.mail.host=smtp.sina.com
spring.mail.port=465
spring.mail.username=你的邮箱地址
spring.mail.password=你的授权码
spring.mail.protocol=smtps
在这里解释一下各个属性的值
1、spring.mail.host的值就是smtp的服务器地址,新浪邮箱的可以在如下找到
2、spring.mail.port的值就是服务器的端口号这里百度一下就可以知道,百度出来的大部分是25,不过尽量不要用25,因为阿里云把25禁用了
3、spring.mail.username=你的邮箱地址
4、spring.mail.password=这里是你的授权码并不是你邮箱的密码,新浪邮箱
点击重置授权码就可以获得你的授权码了、
5、spring.mail.protocol=smtps ,使用的协议,如果用的是25端口这个不用写,因为默认的是smtp协议
4、书写发送邮件的工具类
@Component
public class MailClient {
@Autowired
private JavaMailSenderImpl sender;
//发送邮件
public boolean sendMail(String to) throws MessagingException {
MimeMessage message = sender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message);
helper.setFrom(sender.getUsername());
helper.setTo(to);
helper.setText("Thank you for ordering!你的验证码为1234!!!!");
sender.send(message);
return true;
}
}
如果不懂工具类的可以看springboot官网:https://docs.spring.io/spring-framework/docs/current/reference/html/integration.html#mail