SpringBoot整合Email 邮件发送

本文详细介绍了如何在SpringBoot项目中配置QQ邮箱SMTP服务,包括设置安全设置、引入依赖、配置application.yml文件,以及创建EmailProperties类和发送邮件的实体类。展示了如何使用JavaMailSender发送测试邮件。
摘要由CSDN通过智能技术生成

配置邮箱

登陆qq邮箱后,找到右上角头像选择[账号与安全]

选择[安全设置],找到SMTP服务并选择打开 

按照步骤获取授权码

项目整合

引入依赖

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

 配置文件 aplication.yml

spring:
  mail:
    #smtp服务主机  163邮箱则为smtp.163.com
    host: smtp.qq.com
    #服务协议
    protocol: smtp
    # 编码集
    default-encoding: UTF-8
    #发送邮件的账户
    username: xxxxxxx@qq.com
    #授权码
    password: xxxxxx
    test-connection: true
    properties:
      mail:
        smtp:
          auth: true
          starttls:
            enable: true
            required: true

Email配置类

import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Data
@Component
public class EmailProperties {
    @Value("${spring.mail.username}")
    private String username;
}

发送邮件实体类


import lombok.Data;
import java.io.Serializable;
@Data
public class ToEmail implements Serializable {


    /**
     * 邮件接收方
     */
    private String to;

    /**
     * 邮件主题
     */
    private String subject;

    /**
     * 邮件内容
     */
    private String content;


}

核心代码

 @Resource
    private JavaMailSender mailSender;
    @Resource
    private EmailProperties emailProperties;
    @GetMapping("test")
    public void test(ToEmail toEmail){
        System.out.println(toEmail);

        //创建简单邮件消息
        SimpleMailMessage message = new SimpleMailMessage();
        //谁发的
        message.setFrom(emailProperties.getUsername());
        //谁要接收
        message.setTo(toEmail.getTo());
        //邮件标题
        message.setSubject(toEmail.getSubject());
        //邮件内容
        message.setText(toEmail.getContent());
        try {
            mailSender.send(message);
        } catch (MailException e) {
            e.printStackTrace();
        }
    }

测试

发送成功

接手成功

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值