SpringBoot发送邮件(网易邮箱,QQ邮箱,139邮箱)

添加依赖

<!--   邮件服务   -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <optional>true</optional>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>

发送者邮箱配置-139邮箱

在这里插入图片描述
刷新页面后会出现生成授权码的提示
在这里插入图片描述

添加配置-139邮箱

## application.yml
server:
  port: 9657
spring:
  profiles:
    active: 139
## application-139.yml
spring:
  mail:
    # 配置 SMTP 服务器地址
    host: smtp.139.com
    # 发送者邮箱
    username: 15178292346@139.com
    # 配置密码,注意不是真正的密码,而是刚刚申请到的授权码
    password: ****
    # 端口号465或者25
    port: 465
    # 默认的邮件编码为UTF-8
    default-encoding: UTF-8
    # 配置SSL 加密工厂
    properties:
      mail:
        smtp:
          ssl:
            # 这里设为true时 端口号设为 465 设为false时 端口号设为25
            enable: true
          socketFactoryClass: javax.net.ssl.SSLSocketFactory
        #表示开启 DEBUG 模式,这样,邮件发送过程的日志会在控制台打印出来,方便排查错误
        debug: true

编写工具类

普通邮件

@Component
public class EmailUtil {
   
    @Autowired
    JavaMailSender javaMailSender;
    @Value("${spring.mail.username}")
    private String sendEmail;
    /**
     * 普通邮件发送
     */
    public void sendSimpleMail() {
   
        // 构建一个邮件对象
        SimpleMailMessage message = new SimpleMailMessage();
        // 设置邮件主题
        message.setSubject("这是一封测试邮件");
        // 设置邮件发送者,这个跟application.yml中设置的要一致
        message.setFrom(sendEmail);
        // 设置邮件接收者,可以有多个接收者,中间用逗号隔开,以下类似
        // message.setTo("*****","****");
        message.setTo("*****@163.com");
        // 设置邮件抄送人,可以有多个抄送人
        message.setCc("898365387@qq.com");
        // 设置隐秘抄送人,可以有多个
        message.setBcc("*****@qq.com");
        // 设置邮件发送日期
        message.setSentDate(new Date());
        // 设置邮件的正文
        message.setText("这是测试邮件的正文");
        // 发送邮件
        javaMailSender.send(message);
    }
}

  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值