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)创建消费者(监听器):