springboot中使用邮件发送功能

1.导入maven依赖

 <!--java.mail:配置-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
        </dependency>

2.在application.properties中配置

spring.mail.username=1683181587@qq.com
spring.mail.password=hquudfprwrcghafj
spring.mail.host=smtp.qq.com
# 开启加密验证,好像只有qq邮箱有这个功能
spring.mail.properties.mail.smtp.ssl.enable=true

 

3.注入JavaMailSenderImpl

可以搜索MailSenderAutoConfiguration中的MailSenderJndiConfiguration查看源代码

@Autowired
JavaMailSenderImpl mailSender;

4.在测试类中体验功能

需要在邮件开启smtp服务

        //简单的邮件
        SimpleMailMessage mailMessage = new SimpleMailMessage();

        mailMessage.setSubject("hello,moses");
        mailMessage.setText("今天的学习进度如何");

        mailMessage.setTo("1683xxx@qq.com");//接收人的邮箱名
        mailMessage.setFrom("16xxx7@qq.com");发送人的邮箱名

        mailSender.send(mailMessage);
        //一个复杂的邮件
        MimeMessage mimeMessage = mailSender.createMimeMessage();
        //组装
        MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage,true);

        messageHelper.setSubject("hello,moses");
        messageHelper.setText("<p style='color:red'>今天的学习进度如何</p>",true);

        //附件
        messageHelper.addAttachment("1.jpg",new File("C:\\Users\\Moses\\Desktop\\a\\1.jpg"));
        messageHelper.addAttachment("2.jpg",new File("C:\\Users\\Moses\\Desktop\\a\\2.jpg"));

        messageHelper.setTo("16xxxx7@qq.com");
        messageHelper.setFrom("1xxxx7@qq.com");

        mailSender.send(mimeMessage);

 

posted @ 2021-03-15 11:46  妳的名字  阅读(185)  评论(0)    收藏  举报