SpringBoot 消息队列RabbitMQ 消息转换器 改变消息的发送格式 节省内存

生产者

java 复制代码
private  final RabbitTemplate rabbitTemplate;
@GetMapping("/putRecord") //插入记录
public Result userMessage(){
    Map<String ,String> map =new HashMap<>();
    map.put("name","生产队的驴");
    map.put("qq","147258");
    rabbitTemplate.convertAndSend("csdn.fanout","a",map);
    return  Result.success("操作成功",null);
}

生产者正常发送消息,而到了队列就变成了这样,自动转换成字节导致体积变大。

rO0ABXNyABFqYXZhLnV0aWwuSGFzaE1hcAUH2sHDFmDRAwACRgAKbG9hZEZhY3RvckkACXRocmVzaG9sZHhwP0AAAAAAAAx3CAAAABAAAAACdAACcXF0AAYx

NDcyNTh0AARuYW1ldAAP55Sf5Lqn6Zif55qE6am0eA==

消息转换器

导入JSON依赖进行序列化

xml 复制代码
     <dependency>
            <groupId>com.fasterxml.jackson.dataformat</groupId>
            <artifactId>jackson-dataformat-xml</artifactId>
        </dependency>

声明依赖

在springboot的启动类上声明

java 复制代码
@SpringBootApplication
public class Demo1Application {

    public static void main(String[] args) {
        SpringApplication.run(Demo1Application.class, args);
    }

    @Bean
    public MessageConverter jackonMessageConverter(){
        return  new Jackson2JsonMessageConverter();
    }
}
相关推荐
太阳神LoveU几秒前
Spring Boot 4.0.3和3.X的各个版本主要功能差别和优劣势对比
java·spring boot·后端
俩娃妈教编程1 分钟前
C++基础知识点:位运算
java·开发语言·jvm·c++·位运算
zhoupenghui1681 分钟前
golang 锁实现原理与解析&锁机制(sync)种类与举例说明以及其使用场景
开发语言·后端·golang·mutex·wait·lock·sync
掘金者阿豪3 分钟前
从“多库掣肘”到“一库平川”:金仓KingbaseES的融合数据库深度体验
后端
夫唯不争,故无尤也10 分钟前
原始文档元数据metadata
java·前端·javascript·sql
wefly201711 分钟前
无需安装的 M3U8 在线播放器,快速实现 HLS 流预览与调试
java·开发语言·python·开发工具
only-qi13 分钟前
RabbitMQ 深度解析:从架构原理到消息全链路可靠性保障
分布式·架构·rabbitmq
Java编程爱好者16 分钟前
面试被问 Redis?这 3 个问题 90% 的人都答不对
后端
金牌归来发现妻女流落街头18 分钟前
【Spring AMQP 三大交换机】
后端·spring
xuansec20 分钟前
【JavaEE安全】Java第三方组件安全漏洞(Log4J JNDI/FastJson 反射)
java·安全·java-ee