1 Star 0 Fork 929

superLicky / spring-boot-mail

forked from 小柒2012 / spring-boot-mail 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 6.70 KB
一键复制 编辑 原始数据 按行查看 历史
小柒2012 提交于 2018-05-04 08:59 . 更新 README.md

spring-boot-mail

邮件发送服务,文本,附件,模板,队列,多线程,定时任务实现多种功能!!!

SpringBoot开发案例之整合mail发送服务

SpringBoot开发案例之整合mail队列篇

开发环境

JDK1.7、Maven、Eclipse、SpringBoot1.5.9、spring-boot-starter-mail、spring-boot-starter-thymeleaf,spring-boot-starter-freemarker

演示图

输入图片说明

输入图片说明

输入图片说明

启动说明

流程图

平台架构

输入图片说明

进程内邮件队列

邮件队列

欢迎关注

输入图片说明

友情提示

由于工作原因,项目正在完善中,随时更新日志,有疑问请留言或者加群

  • JAVA爱好者④:JAVA爱好者
  • JAVA爱好者①:JAVA爱好者①(满)
  • JAVA爱好者②:JAVA爱好者②(满)
  • JAVA爱好者③:JAVA爱好者③(满)

项目结构

├─src
│  ├─main
│  │  ├─java
│  │  │  └─com
│  │  │      └─itstyle
│  │  │          └─mail
│  │  │              │  Application.java
│  │  │              │  
│  │  │              ├─demo
│  │  │              │      CountDownLatchDemo.java
│  │  │              │      Ticket.java
│  │  │              │      TicketRun.java
│  │  │              │      
│  │  │              ├─model
│  │  │              │      Email.java
│  │  │              │      
│  │  │              ├─queue
│  │  │              │      ConsumeMailQueue.java
│  │  │              │      MailQueue.java
│  │  │              │      
│  │  │              ├─redis
│  │  │              │      Receiver.java
│  │  │              │      RedisConfig.java
│  │  │              │      RedisListener.java
│  │  │              │      
│  │  │              ├─service
│  │  │              │  │  IMailService.java
│  │  │              │  │  
│  │  │              │  └─impl
│  │  │              │          MailServiceImpl.java
│  │  │              │          
│  │  │              ├─task
│  │  │              │      SendMail.java
│  │  │              │      
│  │  │              └─util
│  │  │                      CommonUtil.java
│  │  │                      Constants.java
│  │  │                      MailUtil.java
│  │  │                      
│  │  ├─resources
│  │  │  │  application-dev.properties
│  │  │  │  application-prod.properties
│  │  │  │  application-test.properties
│  │  │  │  application.yml
│  │  │  │  spring-context-dubbo.xml
│  │  │  │  spring-context-task.xml
│  │  │  │  
│  │  │  └─static
│  │  │      ├─file
│  │  │      │      关注科帮网获取更多源码.zip
│  │  │      │      
│  │  │      ├─image
│  │  │      │      springcloud.png
│  │  │      │      
│  │  │      └─template
│  │  │              welcome.flt
│  │  │              welcome.html
│  │  │              
│  │  └─webapp
│  │      │  index.jsp
│  │      │  
│  │      └─WEB-INF
│  │              web.xml
│  │              
│  └─test
│      └─java
│          └─com
│              └─itstyle
│                  └─mail
│                      └─test
│                              SpringbootMailApplication.java
  • 普通文本发送
  • 富文本发送(图片、附件)
  • freeMarker模版发送邮件
  • thymeleaf模版发送邮件

评测生成模版时间对比(1000次循环)

  • Thymeleaf用时:2686ms
  • Freemarker用时:498ms

对比测试,建议使用Freemarker模版

20170721

  • 加入DubboX对外提供发送服务
  • 加入定时任务统计失败邮件定时重新发送
  • 多环境配置文件实现

输入图片说明

作者: 小柒2012

欢迎关注: https://blog.52itstyle.com

测试

  • 修改 application-dev.properties 中自己的邮件配置 同时配置dubbo.registry.address地址
  • 执行 com.itstyle.mail.test.SpringbootMailApplication main 方法
Java
1
https://gitee.com/liuchao438086728/spring-boot-mail.git
git@gitee.com:liuchao438086728/spring-boot-mail.git
liuchao438086728
spring-boot-mail
spring-boot-mail
master

搜索帮助