SpringBoot 整合 RabbitMQ|学习笔记

简介: 快速学习 SpringBoot 整合 RabbitMQ

开发者学堂课程【SpringBoot 实战教程 SpringBoot 整合 RabbitMQ】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/651/detail/10817


SpringBoot 整合 RabbitMQ


1、在 springboot 中如何集合 rabbitmqrabbitmq 和 ActiveMQ 一样都是消息管理的相应的服务器软件做相应架包的依赖以下是 springboot 提供的对应的依赖创建好工程直接加入依赖

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-amqp</artifactId>

对应的是 amqp 的依赖

</dependency>

2、在 resoures下创建全局配置文件,application.properties。

全局配置就是要链接的 rabbitmq 所在服务器的IP地址和端口号相应的用户名和密码

spring.application.name=sbrabbitmq

spring.rabbitmq.addresses=192.168.25.129:5672在 liunx 服务器上这是相应 IP 地址端口号是5672

spring.rabbitmq.username=admin用户名

spring.rabbitmq.password=admin密码

spring.rabbitmq.publisher-confirms=true

3、写一个消息的发送包mysender

创建相应的对象需要加注解springboot 在启动时进行默认的配置它会创建一个 rabbitTemplate 模版就可以使用模版进行消息发送

发消息:

@Component

PublicclassmySender{

@Autowired

PrivateAmqpTemplaterabbitTemplate;

Publicvoidsend(){

{

rabbitTemplate.convertAndSend("hel",‘’你好!!!‘’);用这个方法实现消息的发送第一个参数是消息要发送到哪个队列中第二个是发送一个文本消息队列在 rabbitmq 中已经创建好在 queues 中实现创建好一个名字为 hel 的队列这个消息就发送到队列中这是消息发送的实现直接借助模版就可以实现

image.png

4、写一个消息的接收方,MyReceiver。

收消息:

@Component

PublicclassmyReceiver{

@RabbitHandler

@RabbitListener(queues="hel")不知道什么时候消息过来所以接收方要进行消息的监听通过注解进行监听指明队列名称即可发消息是 hel收消息要和它对应上

Publicvoidreceive(Stringtext){ 当有消息过来时text 参数就可以直接接收到消息这是文本消息所以用字符串类型进行接收

System.out.println("收到消息:"+text); 把接收到的消息进行输出

}

}

这就是用 Rabbitmq 如何发消息和收消息在收消息这一方是如何实现监听的用注解进行实现

5、在启动类中进行每个包的扫描扫描 com.qianfeng 的子包

@SpringBootApplication( scanBasePackages="com.qianfeng")

6、写一个 controller,TestController。

实现消息的发送接收方已经做了监听所以它会收到在这实现消息的发送方发送方叫 mysender

package com. qi anfeng. controller;

import org . spring framework. stereotype . Controller;

@Controller

public class TestController {

@Autowired

privateMySender mySender ;

@RequestMapping ('‘/send’‘)访问路径

@ResponseBody

public String test ()

{

mySender send ( )只需要调用 mysender 发送方 send 的方法执行消息的发送

Return‘’ok‘’返回字符串 ok

}

7、调用 send 中的方法发送消息消息的内容是你好

Public void send()

{

rabbitTemplate. convertAndSend( "hel‘’‘’你好!!!");

}

收到之后它会打印到控制台

@RabbitHandler

@RabbitListener (queues="hel")

public void

receive (String text) {

System. out println("收到消息: "+text) ;

}

8、启动controller 的路径是 sendlocalhost:8080/send执行在浏览器上得到的是 ok

image.png

控制台也收到消息这就说明这个消息发送成功并且被接收者接收到了这就是 springboot 中如何集成 rabbitmq

相关实践学习
快速体验阿里云云消息队列RocketMQ版
本实验将带您快速体验使用云消息队列RocketMQ版Serverless系列实例进行获取接入点、创建Topic、创建订阅组、收发消息、查看消息轨迹和仪表盘。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
2月前
|
消息中间件 Ubuntu Java
SpringBoot整合MQTT实战:基于EMQX实现双向设备通信
本教程指导在Ubuntu上部署EMQX 5.9.0并集成Spring Boot实现MQTT双向通信,涵盖服务器搭建、客户端配置及生产实践,助您快速构建企业级物联网消息系统。
717 1
|
2月前
|
消息中间件 Java Kafka
消息队列比较:Spring 微服务中的 Kafka 与 RabbitMQ
本文深入解析了 Kafka 和 RabbitMQ 两大主流消息队列在 Spring 微服务中的应用与对比。内容涵盖消息队列的基本原理、Kafka 与 RabbitMQ 的核心概念、各自优势及典型用例,并结合 Spring 生态的集成方式,帮助开发者根据实际需求选择合适的消息中间件,提升系统解耦、可扩展性与可靠性。
170 1
消息队列比较:Spring 微服务中的 Kafka 与 RabbitMQ
|
2月前
|
消息中间件 存储 Java
RabbitMQ 和 Spring Cloud Stream 实现异步通信
本文介绍了在微服务架构中,如何利用 RabbitMQ 作为消息代理,并结合 Spring Cloud Stream 实现高效的异步通信。内容涵盖异步通信的优势、RabbitMQ 的核心概念与特性、Spring Cloud Stream 的功能及其与 RabbitMQ 的集成方式。通过这种组合,开发者可以构建出具备高可用性、可扩展性和弹性的分布式系统,满足现代应用对快速响应和可靠消息传递的需求。
142 2
RabbitMQ 和 Spring Cloud Stream 实现异步通信
|
6月前
|
消息中间件 缓存 NoSQL
基于Spring Data Redis与RabbitMQ实现字符串缓存和计数功能(数据同步)
总的来说,借助Spring Data Redis和RabbitMQ,我们可以轻松实现字符串缓存和计数的功能。而关键的部分不过是一些"厨房的套路",一旦你掌握了这些套路,那么你就像厨师一样可以准备出一道道饕餮美食了。通过这种方式促进数据处理效率无疑将大大提高我们的生产力。
223 32
|
5月前
|
监控 安全 Java
Java 开发中基于 Spring Boot 3.2 框架集成 MQTT 5.0 协议实现消息推送与订阅功能的技术方案解析
本文介绍基于Spring Boot 3.2集成MQTT 5.0的消息推送与订阅技术方案,涵盖核心技术栈选型(Spring Boot、Eclipse Paho、HiveMQ)、项目搭建与配置、消息发布与订阅服务实现,以及在智能家居控制系统中的应用实例。同时,详细探讨了安全增强(TLS/SSL)、性能优化(异步处理与背压控制)、测试监控及生产环境部署方案,为构建高可用、高性能的消息通信系统提供全面指导。附资源下载链接:[https://pan.quark.cn/s/14fcf913bae6](https://pan.quark.cn/s/14fcf913bae6)。
735 0
|
11月前
|
消息中间件 监控 Java
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
如何将Spring Boot + RabbitMQ应用程序部署到Pivotal Cloud Foundry (PCF)
165 6
|
消息中间件 Java 测试技术
消息中间件RabbitMQ---SpringBoot整合RabbitMQ【三】
这篇文章是关于如何在SpringBoot应用中整合RabbitMQ的消息中间件。内容包括了在SpringBoot项目中添加RabbitMQ的依赖、配置文件设置、启动类注解,以及如何通过单元测试来创建交换器、队列、绑定,并发送和接收消息。文章还介绍了如何配置消息转换器以支持对象的序列化和反序列化,以及如何使用注解`@RabbitListener`来接收消息。
消息中间件RabbitMQ---SpringBoot整合RabbitMQ【三】
|
网络协议 Java 物联网
MQTT(EMQX) - SpringBoot 整合MQTT 连接池 Demo - 附源代码 + 在线客服聊天架构图
MQTT(EMQX) - SpringBoot 整合MQTT 连接池 Demo - 附源代码 + 在线客服聊天架构图
2157 3