热门排行
简介
spring-boot-mail是一个邮件发送服务,文本,附件,模板,队列,多线程,定时任务实现多种功能!!!
开发环境
JDK1.8、Maven、Eclipse、SpringBoot 2.1.6、spring-boot-starter-mail、spring-boot-starter-thymeleaf、spring-boot-starter-freemarker、Dubbo、zookeeper-3.5.3、Redis
启动说明
1、项目中RPC框架使用的是当当维护的DubboX,现在阿里已经处于维护状态中,请自行更新
2、配置Dubbo需要安装注册中心zookeeper: http://www.52itstyle.top/thread-19791-1-1.html
3、如果不想使用Dubbo和安装zookeeper,又想启动看下效果,请注释掉 Application 类中的@ImportResource({"classpath:spring-context-dubbo.xml"}), 同时由于接口扫描注解使用的是Dubbo的 com.alibaba.dubbo.config.annotation.Service; 请自行替换成spring的 org.springframework.stereotype.Service(废弃);
4、Sql文件位于src/main/resource/sql下,自行导入即可、里面有一条测试数据
5、API: http://localhost:8080/swagger-ui.html、 可以自行测试发送邮件,前提是要修改application-dev.properties中的邮箱配置为自己可用的
6、2018-10-25 原spring-context-dubbo.xml 配置 替换为 dubbo-spring-boot-starter 2.0.0
7、执行 com.itstyle.mail.test.SpringbootMailApplication main 方法
流程图
平台架构
进程内邮件队列
项目结构
├─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模版发送邮件