12、SpringBoot 整合 ActiveMQ 实现邮件发送功能

1、ActiveMQ 是什么鬼?

ActiveMQ 是一种开源的基于 JMS(Java Message Servie)规范的一种消息中间件的实现,ActiveMQ 的设计目标是提供标准的,面向消息的,能够跨越多语言和多系统的应用集成消息通信中间件。ActiveMQ 常被应用与系统业务的解耦,异步消息的推送,增加系统并发量,提高用户体验。

a.AcitveMQ 的数据传送流程

 

b.ActiveMQ 的两种消息传递类型

1、点对点传输,即一个生产者对应一个消费者,生产者向 broke 推送数据,数据存储在 broke 的一个队列中,然后消费者接受该条队列里的数据。

2、基于发布 / 订阅模式的传输,即根据订阅话题来接收相应数据,一个生产者可向多个消费者推送数据。两种消息传递类型的不同,点对点传输消费者可以接收到在连接之前生产者所推送的数据,而基于发布 / 订阅模式的传输方式消费者只能接收到连接之后生产者推送的数据

2、代码实现(注意:本地需先安装 ActiveMQ)

1、构建 maven 项目,pom 文件中引入依赖:

 

2、application.yml 文件内容配置:

 

这里是mq 和 mail 的配置,需要注意不要有重复配置,我刚开始配置了两个 spring 导致 mail 配置没有生效,项目启动时总是报无法自动注解!!!

3、Email 实体类的创建:

 

4、创建生产者:

 

5、创建消费者(监听器):

 

当监听器监听到发送邮件信息后直接调邮件模板中发送邮件,里面可以设置各种附件信息,包括捕获收件人信息错误异常。

6、发送邮件模板类创建:

 

以上是一些逻辑实现,重点就是生产者创建消息放进队列中,消费者(监听器)收到消息后做一些业务处理。其次就是邮件格式的设置,包括附件,图片等。。。

源码下载地址:https://download.csdn.net/download/LQS199372/12064815

版权声明:「DDKK.COM 弟弟快看,程序员编程资料站」本站文章,版权归原作者所有