springboot整合邮件发送(163邮箱发送为例)

先登录163邮箱获取授权

 勾选后安装提示会叫你设置授权密码之类的:记住授权的密码

1.引入maven依赖
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>
application.yml里配置:
spring:        
  mail:
    host: smtp.163.com  //登录邮箱设置那里可以看到,第一张图所示,SMTP服务器
    password: 12222 密码是第二张图设置的授权密码.不是邮箱的登录密码
    username: 15902048215@163.com //这个是你的邮箱

创建一个配置类

package com.bamboo.water_chivalry.common.config;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.mail.MailSender;
import org.springframework.mail.javamail.JavaMailSenderImpl;

/**
 * @PROJECT_NAME: water_chivalry
 * @DESCRIPTION:
 * @Author:: Hanson-Hsc
 * @DATE: 2020/6/8 17:17
 */
@Configuration
@ConfigurationProperties(prefix = "spring.mail")
public class EmailConfig {

    private String host;
    private Integer port;
    private String username;
    private String password;

    @Bean
    public MailSender javaMailSender() {
        JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl();
        javaMailSender.setHost(host);
        javaMailSender.setPort(port);
        javaMailSender.setUsername(username);
        javaMailSender.setPassword(password);
        return javaMailSender;
    }

    public void setHost(String host) {
        this.host = host;
    }
    public void setPort(Integer port) {
        this.port = port;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public void setPassword(String password) {
        this.password = password;
    }
}

编写测试

    @Autowired
    private MailSender javaMailSender;

    public void emailSend(String txt){
        SimpleMailMessage message = new SimpleMailMessage();
        message.setFrom("你的源邮箱");
        message.setTo("需要发送的邮箱");
        message.setSubject("邮件主题");
        message.setText("文本");
        javaMailSender.send(message);
    }

发送成功后进入邮箱查看是否成功

原文地址:https://www.cnblogs.com/javagg/p/13067332.html