【RabbitMQ】SpringAMQP--消息转换器

SpringAMQP--消息转换器

测试发送Object类型消息

1.声明队列

java 复制代码
@Configuration
public class FanoutConfig {
    @Bean
    public Queue objectQueue(){
        return new Queue("object.queue");
    }
}

运行消费者后:

2.发送消息

java 复制代码
@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringAmqpTest {
    @Autowired
    private RabbitTemplate rabbitTemplate;
     @Test
    public void testSendObjectQueue(){
        Map<String,Object> msg = new HashMap<>();
        msg.put("name","柳岩");
        msg.put("age",26);
        rabbitTemplate.convertAndSend("object.queue",msg);
    }
}

运行发布者后:

3.使用基于JDK的ObjectOutputstream完成序列化

3.1在父工程中引入依赖(发布者与消费者都需要使用)
xml 复制代码
<dependency>
	<groupId>com.fasterxml.jackson.core</groupId>
	<artifactId>jackson-databind</artifactId>
</dependency>
3.2在发布者服务与消费者服务声明MessageConverter
java 复制代码
@Bean
public MessageConverter messageConverter(){
	return new Jackson2JsonMessageConverter();
}
3.3发布者服务结果

先清理object.queue队列中的信息

在运行发布者后:

3.4消费者服务结果
java 复制代码
//消费者代码
@Component
public class SpringRabbitListener {

    @RabbitListener(queues = "object.queue")
    public void listenObjectQueue(Map<String,Object> msg){
        System.out.println("接收到object.queue的消息:" + msg);
    }

}

运行后的结果:

相关推荐
新手村领路人15 小时前
opencv gpu cuda python c++版本测试代码
python·opencv·cuda
高洁0115 小时前
大模型-高效优化技术全景解析:微调 量化 剪枝 梯度裁剪与蒸馏 下
人工智能·python·深度学习·神经网络·知识图谱
white-persist15 小时前
CSRF 漏洞全解析:从原理到实战
网络·python·安全·web安全·网络安全·系统安全·csrf
爬山算法15 小时前
Redis(66)Redis如何实现分布式锁?
数据库·redis·分布式
Bellafu66616 小时前
本地搭建EXAM-MASTER考试系统
python
开心-开心急了16 小时前
Flask入门教程——李辉 第三章 关键知识梳理
后端·python·flask
W.Buffer16 小时前
Kafka零拷贝原理深度解析:从传统拷贝痛点到工作实践优化
分布式·kafka
rannn_11117 小时前
【学以致用|python自动化办公】OCR批量识别自动存为Excel(批量识别发票)
python·ocr·excel·财务
AI视觉网奇17 小时前
pycharm 默认终端设置 cmd
ide·python·pycharm
言之。17 小时前
LiteLLM:让LLM调用变得简单统一
后端·python·flask