SSM 项目整合-网站登录验证-发送邮件功能

本文介绍了如何在SSM项目中实现网站登录验证的邮件发送功能,包括通过SMTP配置新浪邮箱、使用Spring Email发送邮件的步骤,以及集成Thymeleaf发送HTML邮件的过程。详细讲解了从邮箱设置、导入所需jar包、设置邮箱参数到编写JavaMailSender工具类,以及创建HTML模板并进行测试的完整流程。
摘要由CSDN通过智能技术生成

发送邮件

1.邮箱设置

  • 启动客户端SMTP服务
  • 选择的是新浪邮箱在这里插入图片描述

2.Spring Email

-1.导入jar包

  • jar包下载网站https://mvnrepository.com/repos/aliyun-releases在这里插入图片描述
    这是Maven的依赖

  • <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-mail</artifactId>
       <version>2.1.5.RELEASE</version>
    </dependency>
    

-2 . 邮箱参数设置

  • #MailProperties
    #域名是什么
    spring.mail.host=smtp.sina.com
    #端口,基本上所有邮箱的默认端口都是465
    spring.mail.port=465
    #邮箱账号
    spring.mail.username=ziqi0327@sina.com
    #这里不是邮箱密码,而是访问授权码,我就不写我的了
    spring.mail.password=*****
    #邮箱协议 stms - 安全协议 - 加密的
    spring.mail.protocol=smtps
    #发送邮件的安全连接
    spring.mail.properties.mail.smtp.ssl.enable=true
    

-3. 使用JavaMailSender发送邮件
JavaMail发送邮件的核心就是JavaMailSender组件
写一个工具类封装邮箱设置

@Component
public class MailClient {

    private static final Logger logger = LoggerFactory.getLogger(MailClient.class);

    /**
     * JavaMailSender也是Spring容器管理的bean对象
     * 直接注入JavaMailSender对象
     */
    @Autowired
    private JavaMailSender mailSender;

    //发件人
    @Value("${spring.mail.username}")
    private String from;

    /**
     * 发送邮件
     * @param to 邮件发给谁
     * @param subject 邮件标题
     * @param content 邮件内容
     */
    public void sendMail(String to, String subject, String content){

        try{
            MimeMessage message = mailSender.createMimeMessage();
            MimeMessageHelper helper = new MimeMessageHelper(message);
            helper.setFrom(from);
            helper.setTo(to);
            helper.setSubject(subject);
            helper.setText(content,true);

            mailSender.send(helper.getMimeMessage());
        }catch(MessagingException e){
            logger.error("发送邮件失败" + e.getMessage());
        }
    }

}

test测试运行

@SpringBootTest
@RunWith(SpringRunner.class)
@ContextConfiguration
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

§九千七§

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值