为什么要有消息转换器??
我们在传递消息的时候,可能会传递不同类型的消息,比如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
相关推荐
青 春 记 忆18 小时前
零基础入门Python11|Git实战:为任务管理器建立版本历史Python私教18 小时前
多个项目怎么安全合并?先适配,再切换动力 continue18 小时前
Linux 基础篇 · 压缩打包与用户管理Bingo_BIG19 小时前
Java Spring 批量修改,实体、接口、方法的定义g3voip19 小时前
防爆电话如何接入SIP调度系统?工业通信系统架构解析北斗落凡尘20 小时前
LangGraph 入门实战(12)--使用MCPjdksjw21 小时前
同步与异步、阻塞与非阻塞、多线程、协程超详细讲解(Python并发编程从入门到精通)Mike_Zhang21 小时前
使用python统计FreeSWITCH呼叫并发FL162386312921 小时前
室内易燃物识别易燃评估室内易燃程度识别分割数据集labelme格式1015张85类别SL-staff21 小时前
技术实践:HR如何用JVS-Logic可视化编排实现考勤数据同步(含节点配置与异常处理)
