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版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
3月前
|
消息中间件 Java 网络架构
|
3月前
|
消息中间件 Java 测试技术
消息中间件RabbitMQ---SpringBoot整合RabbitMQ【三】
这篇文章是关于如何在SpringBoot应用中整合RabbitMQ的消息中间件。内容包括了在SpringBoot项目中添加RabbitMQ的依赖、配置文件设置、启动类注解,以及如何通过单元测试来创建交换器、队列、绑定,并发送和接收消息。文章还介绍了如何配置消息转换器以支持对象的序列化和反序列化,以及如何使用注解`@RabbitListener`来接收消息。
消息中间件RabbitMQ---SpringBoot整合RabbitMQ【三】
|
3月前
|
网络协议 Java 物联网
MQTT(EMQX) - SpringBoot 整合MQTT 连接池 Demo - 附源代码 + 在线客服聊天架构图
MQTT(EMQX) - SpringBoot 整合MQTT 连接池 Demo - 附源代码 + 在线客服聊天架构图
737 2
|
3月前
|
消息中间件 Java Maven
|
4月前
|
消息中间件 Java 测试技术
【RocketMQ系列八】SpringBoot集成RocketMQ-实现普通消息和事务消息
【RocketMQ系列八】SpringBoot集成RocketMQ-实现普通消息和事务消息
304 1
|
4月前
|
消息中间件 Java 数据安全/隐私保护
Spring Boot与RabbitMQ的集成
Spring Boot与RabbitMQ的集成
|
4月前
|
消息中间件 Java RocketMQ
Spring Boot与RocketMQ的集成
Spring Boot与RocketMQ的集成
|
4月前
|
消息中间件 Java Spring
实现Spring Boot与RabbitMQ消息中间件的无缝集成
实现Spring Boot与RabbitMQ消息中间件的无缝集成
|
消息中间件 Linux
centos7 yum快速安装rabbitmq服务
centos7 yum快速安装rabbitmq服务
220 0
|
消息中间件 中间件 微服务
RabbitMQ 入门简介及安装
RabbitMQ 入门简介及安装
120 0
下一篇
无影云桌面