@RabbitListener(queues = "queue")
public class MessageHandler {
@RabbitHandler
public void handleMessage(@Payload String message) {
System.out.println("Received string message: " + message);
@RabbitHandler
public void handleMessage(@Payload Integer message) {
System.out.println("Received integer message: " + message);
@RabbitListener(queues = "anotherQueue")
@RabbitHandler
public void handleMessage(@Payload CustomMessage message) {
System.out.println("Received custom message: " + message);
以上代码中,我们在处理字符串和整数消息时使用了@Payload
注解指定消息体类型,而在处理自定义消息时,我们还需要在类上添加@RabbitListener
注解指定监听的队列。
本文介绍了Spring Boot中@RabbitHandler
注解的介绍、原理和使用方法。在使用@RabbitHandler
注解时,我们需要注意一些细节和使用方法,如指定消息体类型、使用@Payload
注解等。通过本文的介绍,我们希望读者能够更好地理解Spring Boot中@RabbitHandler
注解的使用方法,并在项目中更加灵活地应用。
本篇是消息队列RabbitMQ的第二弹。
上一篇的结尾我也预告了本篇的内容:利用RabbitTemplate和注解进行收发消息,还有一个我临时加上的内容:消息的序列化转换。
本篇会和SpringBoot做整合,采用自动配置的方式进行开发,我们只需要声明RabbitMQ地址就可以了,关于各种创建连接关闭连接的事都由Spring帮我们了~
交给Spring帮我们管理连接可以让我们专注于业务逻辑,就像声明式事务一样易用,方便又高效。
祝有好收获,先赞后看,快乐无限。
本文代码: 码云地址 Git
1.@RabbitListener 注解是指定某方法作为消息消费的方法,例如监听某 Queue 里面的消息。
2.@RabbitListener标注在方法上,直接监听指定的队列,此时接收的参数需要与发送市类型一致
@Component
public class PointConsumer {
//监听的队列名
@RabbitListener(queues = "point.to.point")
public void processOne(String name) {
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
自己创建连接对象
连接对象的工具类
import com.rabbitmq.client.Channel;
import com.rabbitm
RabbitMQ
RabbitMQ是一个被广泛使用的开源消息队列。它是轻量级且易于部署的,它能支持多种消息协议。RabbitMQ可以部署在分布式和联合配置中,以满足高规模、高可用性的需求。
在pom.xml中添加相关依赖
<!--消息队列相关依赖-->
<dependency>
<groupId>org.spr...
按照官方的例子代码如下:@Component
@RabbitListener(queues="test_mq_testQueue")
public class Receiver {
@RabbitHandler
public void process(String msg){
System.out.println(msg);
}但是运行接收消息时,后台一
1. 概述之前我有一系列关于RabbitMQ文章介绍了RabbitMQ的用法,本篇我们介绍如何在Spring Boot中集成RabbitMQ。本篇主要内容如下:
在Spring boot中消息的发送和接收的两种方式的demo
配置使用MessageConverter对消息序列化
2. Demo工程公共部分介绍工程名称:rabbitmq需要在我们的工程中的pom.xml引入新jar <!-- spri
2、在application.properties中设置RabbitMQ的配置信息:
spring.application.name=rabbitmq-hello
spring.rabbitmq.host=localhost
spring.rab
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
2、该依赖给容器中自动配置了
RabbitAutoConfiguration:
rabbitMessagin.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
配置连接,创建交换
addresses: 127.0.0.1:5672 #mq服务器地址
username: zhangcheng #账号
password: 00000000 #密码
添加 @RabbitListener 注解来指定某方法作为消息消费的方法,例如监听某 Queue 里面的消息
MessageConvert
涉及网络传输的应用序列化不可避免,发送端以某种规则将消息转成 byte 数组进行发送,接收端则以约定的规则进行 byte[] 数组的解析
RabbitMQ 的序列化是指 Message 的 body 属性,即我们真正需要传输的内容,RabbitMQ 抽象出一个...