【系统学习SpringBoot】SpringBoot初遇邮件服务
2017-09-14 17:53
549 查看
本篇博客主要记录博主学习SpringBoot邮件服务,主要内容有
【如何发送简单邮件】【发送html格式邮件】【发送带附件的邮件】【发送代图片的邮件】
一、SpringBoot配置邮件服务
【1】添加依赖
【2】添加配置
配置就这这两步,,下面详细说一下,,这个授权码的问题
【网易邮箱】,可以通过如下图获取授权码(博主试了,居然每次都设置失败,好伤心)
【腾讯企业邮箱】可通过如下方式获取授权码(亲测可用,很完美)
【qq邮箱】和腾讯企业邮箱差得有点远,,题主测了几次都不给力
生成方式和企业的类似,,下面是官方的教程(博主测了,没卵用,有兴趣的可以自己测一下,可能是博主哪里没设置好)
二、SpringBoot发送邮件
博主为了测试方便直接卸载Controller里了如下:
【发送简单邮件】
【发送html格式邮件】
【发送带附件的邮件】
【发送代图片的邮件】
完整代码如下
【如何发送简单邮件】【发送html格式邮件】【发送带附件的邮件】【发送代图片的邮件】
一、SpringBoot配置邮件服务
【1】添加依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency>
【2】添加配置
spring: mail: host: smtp.exmail.qq.com//腾讯的邮箱发送地址,【网易】的““mtp.qiye.163.com” username: *****@zslstudy.cn//博主使用的是腾讯企业邮箱,邮箱 password: *********//这个是授权码不是登陆密码 default-encoding: UTF-8
配置就这这两步,,下面详细说一下,,这个授权码的问题
【网易邮箱】,可以通过如下图获取授权码(博主试了,居然每次都设置失败,好伤心)
【腾讯企业邮箱】可通过如下方式获取授权码(亲测可用,很完美)
【qq邮箱】和腾讯企业邮箱差得有点远,,题主测了几次都不给力
生成方式和企业的类似,,下面是官方的教程(博主测了,没卵用,有兴趣的可以自己测一下,可能是博主哪里没设置好)
http://service.mail.qq.com/cgi-bin/help?subtype=1&&no=1001256&&id=28
二、SpringBoot发送邮件
博主为了测试方便直接卸载Controller里了如下:
【发送简单邮件】
@RequestMapping("sendmail") public String sendMail() { try { MimeMessage mimeMessage = this.mailSender.createMimeMessage(); MimeMessageHelper message = new MimeMessageHelper(mimeMessage); message.setFrom("小鼠标@zslstudy.cn"); message.setTo("********@163.com"); message.setSubject("简单文本"); message.setText("测试邮件内容,,<h1>简单文本</h1>"); this.mailSender.send(mimeMessage); } catch (MessagingException e) { e.printStackTrace(); } return "send success"; }
【发送html格式邮件】
@RequestMapping("sendmail_html") public String sendMailHtml() { try { MimeMessage mimeMessage = this.mailSender.createMimeMessage(); MimeMessageHelper message = new MimeMessageHelper(mimeMessage); message.setFrom("小鼠标@zslstudy.cn"); message.setTo("********@163.com"); message.setSubject("带Html的邮件"); message.setText("测试邮件内容<br/><hr/><br/><h2>带html</h2>", true); this.mailSender.send(mimeMessage); } catch (MessagingException e) { e.printStackTrace(); } return "send success"; }
【发送带附件的邮件】
@RequestMapping("sendmail_attachment") public String sendMailAttachment() { try { MimeMessage mimeMessage = this.mailSender.createMimeMessage(); MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true); message.setFrom("小鼠标@zslstudy.cn"); message.setTo("********@163.com"); message.setSubject("带附件的邮件"); message.setText("测试邮件内容", true); //添加附件 FileSystemResource file = new FileSystemResource(new File("src/main/resources/static/测试")); message.addAttachment("测试", file); this.mailSender.send(mimeMessage); } catch (MessagingException e) { e.printStackTrace(); } return "send success"; }
【发送代图片的邮件】
@RequestMapping("sendmail_img") public String sendMailImg() { try { MimeMessage mimeMessage = this.mailSender.createMimeMessage(); MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true); message.setFrom("小鼠标@zslstudy.cn"); message.setTo("********@163.com"); message.setSubject("带图片的邮件"); message.setText("测试带图片的邮件发送"); FileSystemResource res = new FileSystemResource(new File("src/main/resources/static/6.jpg")); message.addInline("2", res);//感觉不去作用,非要使用内镶图片的话,,感觉html格式的可以实现 this.mailSender.send(mimeMessage); } catch (MessagingException e) { e.printStackTrace(); } return "send success"; }
完整代码如下
package xatu.zsl.controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.FileSystemResource; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.mail.javamail.MimeMessageHelper; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; import java.io.File; /** * Created by zsl on 2017/9/14. */ @RestController public class MailController { @Autowired JavaMailSender mailSender;//可能会报错,,屏蔽掉就行了 @RequestMapping("sendmail") public String sendMail() { try { MimeMessage mimeMessage = this.mailSender.createMimeMessage(); MimeMessageHelper message = new MimeMessageHelper(mimeMessage); message.setFrom("小鼠标@zslstudy.cn"); message.setTo("********@163.com"); message.setSubject("简单文本"); message.setText("测试邮件内容,,<h1>简单文本</h1>"); this.mailSender.send(mimeMessage); } catch (MessagingException e) { e.printStackTrace(); } return "send success"; } @RequestMapping("sendmail_html") public String sendMailHtml() { try { MimeMessage mimeMessage = this.mailSender.createMimeMessage(); MimeMessageHelper message = new MimeMessageHelper(mimeMessage); message.setFrom("小鼠标@zslstudy.cn"); message.setTo("********@163.com"); message.setSubject("带Html的邮件"); message.setText("测试邮件内容<br/><hr/><br/><h2>带html</h2>", true); this.mailSender.send(mimeMessage); } catch (MessagingException e) { e.printStackTrace(); } return "send success"; } @RequestMapping("sendmail_attachment") public String sendMailAttachment() { try { MimeMessage mimeMessage = this.mailSender.createMimeMessage(); MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true); message.setFrom("小鼠标@zslstudy.cn"); message.setTo("********@163.com"); message.setSubject("带附件的邮件"); message.setText("测试邮件内容", true); //添加附件 FileSystemResource file = new FileSystemResource(new File("src/main/resources/static/测试")); message.addAttachment("测试", file); this.mailSender.send(mimeMessage); } catch (MessagingException e) { e.printStackTrace(); } return "send success"; } @RequestMapping("sendmail_img") public String sendMailImg() { try { MimeMessage mimeMessage = this.mailSender.createMimeMessage(); MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true); message.setFrom("小鼠标@zslstudy.cn"); message.setTo("********@163.com"); message.setSubject("带图片的邮件"); message.setText("带图片的邮件发送"); FileSystemResource res = new FileSystemResource(new File("src/main/resources/static/6.jpg")); message.addInline("2", res);//感觉不去作用,非要使用内镶图片的话,,感觉html格式的可以实现 this.mailSender.send(mimeMessage); } catch (MessagingException e) { e.printStackTrace(); } return "send success"; } }
相关文章推荐
- Springboot mail邮件服务功能学习
- Spring Boot和Spring Cloud微服务架构学习(四)-Spring Cloud总结
- SpringBoot系列九:SpringBoot服务整合(整合邮件服务、定时调度、Actuator监控)
- 转载:Spring Boot (十):邮件服务
- 【系统学习SpringBoot】SpringBoot 对象转JSON输出
- 基于Spring Boot和Spring Cloud实现微服务架构学习
- 基于Spring Boot和Spring Cloud实现微服务架构学习(二)-Spring Boot总结
- 微服务之分布式跟踪系统(springboot+zipkin)
- 基于Spring Boot、Spring Cloud、Docker的微服务系统架构实践
- Spring Boot + Spring Cloud 构建微服务系统(二):服务消费和负载(Ribbon)
- 基于Spring Boot和Spring Cloud实现微服务架构学习(一)-Spring框架介绍
- 【系统学习SpringBoot】springBoot整合Mybatis
- Spring boot 集成邮件服务
- SpringBoot微服务之分布式跟踪系统(springboot+zipkin+MySQL)
- 基于Spring Boot和Spring Cloud实现微服务架构学习
- springboot(十):邮件服务
- 基于Spring Boot和Spring Cloud实现微服务架构学习
- 基于Spring Boot和Spring Cloud实现微服务架构学习(一)-Spring框架介绍
- 【系统学习SpringBoot】springBoot 入门篇
- 【系统学习SpringBoot】再遇Spring Data JPA之JPA应用详解(自定义查询及复杂查询)