zoukankan      html  css  js  c++  java
  • springboot(8) 发送邮件

    1、pom.xml

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

    application.properties

    server.port=8083
    spring.mail.host=smtp.qq.com
    spring.mail.protocol=smtp
    spring.mail.default-encoding=UTF-8
    spring.mail.password=kjamgrjlonmnbgaa  #这个是授权码,不是邮箱密码
    spring.mail.username=805755@qq.com
    spring.mail.port=587
    spring.mail.properties.mail.stmp.socketFactory.class=javax.net.ssl.SSLSocketFactory
    spring.mail.properties.mail.debug=true

    邮件模板

    resource/templates/mail.html

    <!DOCTYPE html>
    <html lang="en" xmlns:th="http://www.thymeleaf.org">
    <head>
        <meta charset="UTF-8">
        <title>提示邮件</title>
    </head>
    <body>
    有新的Banner创建成功
    <table border="1">
        <tr>
            <td>Id</td>
            <td th:text="${bannerId}"></td>
        </tr>
        <tr>
            <td>名称</td>
            <td th:text="${bannerName}"></td>
        </tr>
        <tr>
            <td>创建时间</td>
            <td th:text="${createTime}"></td>
        </tr>
    </table>
    
    <p>希望在未来的日子里,携手共进!</p>
    </body>
    </html>

    发送邮件

    @Component
    public class MailReceiver {
        public static final Logger logger = LoggerFactory.getLogger(MailReceiver.class);
        @Autowired
        JavaMailSender javaMailSender;
        @Autowired
        MailProperties mailProperties;
        @Autowired
        TemplateEngine templateEngine;
    
        @RabbitListener(queues = Const.MAIL_QUEUE_NAME)
        public void handler(Message message, Channel channel){
            Long tag = null;
            try {
                Banner banner = (Banner) message.getPayload();// 发送邮件
                MimeMessage msg = javaMailSender.createMimeMessage();
                MimeMessageHelper helper = new MimeMessageHelper(msg);
                helper.setTo("805766@qq.com");
                helper.setFrom("805755@qq.com"); // 这个需要和spring.mail.username一致
                helper.setSubject("创建Banner");
                helper.setSentDate(new Date());
                Context context = new Context();
                context.setVariable("bannerId", banner.getId());
                context.setVariable("bannerName", banner.getBannerName());
                context.setVariable("createTime", banner.getCreateTime());
                String mail = templateEngine.process("mail", context);
                helper.setText(mail, true);
                javaMailSender.send(msg);
              
                logger.info("邮件发送成功");
            } catch (Exception e) {
                
                logger.error("邮件发送失败");
            }
        }
    }
  • 相关阅读:
    es学习-java操作 2.4.0版本
    es学习-基础增删改查
    mongodb 查询条件
    mongodb-查询
    mysql 性能优化
    mysql 存储过程学习(总)
    MySQL 存储过程 -流程控制的使用
    MySQL 存储过程 -光标的使用
    maven的聚合和继承
    mavean的依赖传递和排除依赖
  • 原文地址:https://www.cnblogs.com/t96fxi/p/13232595.html
Copyright © 2011-2022 走看看