Spring boot 发邮件

我用的是qq邮箱,其他邮箱只需要改下配置文件一些内容即可。

1.导入依赖

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>

 </dependency>

2.配置文件 我用的yml文件 .properties文件自己按照格式改一下就行了

mail:
    host: smtp.qq.com
    #发送方的邮箱
    username: [email protected]
    #对于qq邮箱而言 密码指的就是发送方的授权码
    password: xxxxxx
    port: 465
    protocol: smtp
    properties:
      mail:
        smtp:
          auth: true
          ssl:
            enable: true

 

其中password不是你的QQ密码 按照我图中操作来

Spring boot 发邮件

找到账户之后往下来找到

Spring boot 发邮件

 

3.编写java

@Component("emailtool")
public class EmailTool {
    @Autowired
    private JavaMailSender javaMailSender;
    
     public void sendSimpleMail(){
            MimeMessage message = null;
            try {
                message = javaMailSender.createMimeMessage();
                MimeMessageHelper helper = new MimeMessageHelper(message, true);
                helper.setFrom("[email protected]");//发送的邮箱
                helper.setTo("[email protected]");//接受的邮箱
                helper.setSubject("标题");//标题

                StringBuffer sb = new StringBuffer();
                sb.append("<h1>验证码</h1>");//发送的内容
                helper.setText(sb.toString(), true);
                javaMailSender.send(message);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

}

4.最后调用sendSimpleMail()方法就可以发送邮件了。