使用springboot发送带附件邮件(465端口加密邮件)

我不是女神ヾ 2024-04-18 14:06 181阅读 0赞

一、开启SMTP服务

二、编码

1、加依赖(pom.xml)

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-mail</artifactId>
  4. </dependency>

2、写配置(application.properties)

  1. ##mail
  2. spring.mail.host=smtp.qq.com
  3. spring.mail.username=自己的邮箱@qq.com
  4. spring.mail.password= 邮箱授权码
  5. #spring.mail.default-encoding=UTF-8
  6. spring.mail.properties.mail.smtp.ssl.enable=true
  7. spring.mail.properties.mail.smtp.ssl.trust=smtp.qq.com
  8. spring.mail.properties.mail.socketFactory.class=javax.net.ssl.SSLSocketFactory
  9. spring.mail.properties.mail.smtp.socketFactory.port=465
  10. spring.mail.properties.mail.smtp.port=465
  11. spring.mail.properties.mail.smtp.auth=true
  12. spring.mail.properties.mail.smtp.starttls.enable=true
  13. spring.mail.properties.mail.smtp.starttls.required=true

三、发送邮件

1、发送html邮件

  1. @RestController
  2. public class MailController {
  3. @Autowired
  4. private JavaMailSender javaMailSender;
  5. @Autowired
  6. private MailProperties mailProperties;
  7. @GetMapping("/html")
  8. public String html() throws MessagingException {
  9. MimeMessage message = javaMailSender.createMimeMessage();
  10. MimeMessageHelper messageHelper = new MimeMessageHelper(message);
  11. messageHelper.setFrom(this.mailProperties.getUsername());
  12. messageHelper.setTo("@qq.com");
  13. messageHelper.setSubject("HTML内容邮件测试");
  14. // 第二个参数表示是否html,设为true
  15. messageHelper.setText("<h1>HTML内容..</h1>", true);
  16. this.javaMailSender.send(message);
  17. return "success";
  18. }
  19. }

2、发送带附件的邮件

  1. @GetMapping("/attach")
  2. public String attach() throws MessagingException {
  3. MimeMessage message = this.javaMailSender.createMimeMessage();
  4. // 第二个参数表示是否开启multipart模式
  5. MimeMessageHelper messageHelper = new MimeMessageHelper(message, true);
  6. messageHelper.setFrom(this.mailProperties.getUsername());
  7. messageHelper.setTo("@qq.com");
  8. messageHelper.setSubject("带附件的邮件测试");
  9. // 第二个参数表示是否html,设为true
  10. messageHelper.setText("<h1>HTML内容..</h1>", true);
  11. messageHelper.addAttachment("2b1ae927328f17aab060e2206198b91.jpg",
  12. new File("src/main/resources/2b1ae927328f17aab060e2206198b91.jpg"));
  13. this.javaMailSender.send(message);
  14. return "success";
  15. }

四、效果

在这里插入图片描述

注意:

附件路径问题:
1、附件放在resource目录下应src/main/resources/2b1ae927328f17aab060e2206198b91.jpg
在这里插入图片描述
2、附件放在其他位置
C:\Users\huo\Desktop\一个文件夹\大二下学期\2b1ae927328f17aab060e2206198b91.jpg

发表评论

表情:
评论列表 (有 0 条评论,181人围观)

还没有评论,来说两句吧...

相关阅读