在SpringBoot中添加发送邮件功能

1、第一步首先引入坐标


<dependency>
    <groupId>org.springframework.bootgroupId>
    <artifactId>spring-boot-starter-mailartifactId>
    <version>2.7.4version>
dependency>

2、打开你的SMTP服务

这里我用的是新浪的邮箱

1、首先登录你的新浪邮箱
2、点击设置
3、点击客服端
在这里插入图片描述
4、开启你的smtp服务
在SpringBoot中添加发送邮件功能_第1张图片

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的服务器地址,新浪邮箱的可以在如下找到
在SpringBoot中添加发送邮件功能_第2张图片
2、spring.mail.port的值就是服务器的端口号这里百度一下就可以知道,百度出来的大部分是25,不过尽量不要用25,因为阿里云把25禁用了
3、spring.mail.username=你的邮箱地址
4、spring.mail.password=这里是你的授权码并不是你邮箱的密码,新浪邮箱
在SpringBoot中添加发送邮件功能_第3张图片
点击重置授权码就可以获得你的授权码了、
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

你可能感兴趣的:(项目,spring,boot,java,后端)