spring boot邮箱验证

  1. pom.xml依赖
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
		</dependency>
  1. application.yml配置文件
spring:
  mail:
    host: smtp.qq.com  	#邮箱服务器地址
    username: xxx@qq.com   #邮箱账号
    password: xxx			#邮箱密码
    default-encoding: utf-8	#默认编码
#邮件发件人
mail:
  fromMail:
    addr: xxx@qq.com
  1. 编写MailService类以及其实现类
public interface MailService {
    /**
     * 发送邮件
     * @param to 邮件收件人
     * @param subject 邮件主题
     * @param verifyCode 邮件验证码
     */
    public void sendMail(String to, String subject, String verifyCode);
}
@Service
public class MailServiceImpl implements MailService {

    @Autowired
    private JavaMailSender mailSender;

    //邮件发件人
    @Value("${mail.fromMail.addr}")
    private String from;

    @Autowired
    TemplateEngine templateEngine;

    @Override
    public void sendMail(String to, String subject, String verifyCode) {
        //创建邮件正文
        Context context = new Context();
        context.setVariable("verifyCode", verifyCode);
        //将模块引擎内容解析成html字符串
        String emailContent = templateEngine.process("emailTemplate", context);
        SimpleMailMessage message = new SimpleMailMessage();
        message.setFrom(from);
        message.setTo(to);
        message.setSubject(subject);
        message.setText(emailContent);
        try {
            mailSender.send(message);
            //logger.info("简单邮件已经发送。");
        } catch (Exception e) {
            //logger.error("发送简单邮件时发生异常!", e);
        }
    }

}
  1. 创建模板,在resources目录下创建templates文件夹,在templates文件夹下创建emailTemplate.html,邮件发送的模板页面
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
您好,本次验证的验证码为:[[${verifyCode}]]
</body>
</html>
  1. 测试类
@Autowired
private MailService mailService;

@Test
public void sendTemplateMail() {
    //发送邮件
    mailService.sendMail("xxx@qq.com","主题:这是模板邮件","123456");
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值