为什么要有消息转换器??
我们在传递消息的时候,可能会传递不同类型的消息,比如map,list等集合,甚至更加复杂的消息,但是AMQP的默认消息转换器是java提供的,他在解析的时候会进行序列化变成一段乱码。
这是一段控制台消息,采用的map传递
可以看见,直接就是乱码了,这个时候,就需要使用Jackson提供的消息转换器来保证消息的可读性。
如何使用?
首先需要导入依赖
XML<dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-xml</artifactId> <version>2.9.10</version> </dependency>
然后在用到mq的地方添加以下代码
java@Bean public MessageConverter messageConverter(){ // 1.定义消息转换器 Jackson2JsonMessageConverter jackson2JsonMessageConverter = new Jackson2JsonMessageConverter(); // 2.配置自动创建消息id,用于识别不同消息,也可以在业务中基于ID判断是否是重复消息 jackson2JsonMessageConverter.setCreateMessageIds(true); return jackson2JsonMessageConverter; }
这个时候再去控制台看信息,就会发现消息的可读性变高了
Spring AMQP ----消息转换器
小汤猿人类2025-01-07 12:16
相关推荐
投图匠8 小时前
十种不同风格的 CTP接口 框架2601_9679801110 小时前
深入理解词向量算法及其在Python中的实践129Lab10 小时前
电池循环测试数据自动化分析:用Python+AI工具构建一键式寿命评估流水线treasure14010 小时前
【复古】浅尝Django前后端不分离可乐ea10 小时前
智能体记忆该拆成几层:笔记、记忆表示与注入上下文Dmz丶11 小时前
前端转 AI 100 天 Day 44:前端集成实战——用 React 给 Agent 做个正式界面jay神11 小时前
基于 YOLOv8 的手势识别系统(Web 版)DeepVisionary11 小时前
阿里云上线旗舰多模态新模型,不公布跑分且限时14天退役东莞市云毅网络有限公司11 小时前
FAQ 覆盖度打分:TF-IDF 与向量嵌入双路召回的 Python 实现爱笑的k1112 小时前
nano-vllm 源码剖析:千行 Python 手写离线推理引擎的调度、显存与并行时序
