助力高校计算机教育 —— 码云为老师推出免费高校版,高达 200 人的协作团队
Watch Star Fork

小柒2012 / spring-boot-mailJavaGPL-2.0

加入码云
与超过 200 万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
邮件发送服务,文本、附件、模版多种实现,队列,线程定时任务功能 http://blog.52itstyle.com
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README.md 6.70 KB

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 方法

项目点评 ( 32 )

你可以在登录后,发表评论

10_float_left_people 10_float_left_close