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();
    }
}
相关推荐
SMF1919几秒前
【分布式文件存储系统Minio】使用Docker快速搭建 MinIO文件存储服务以及JAVA
分布式
摇滚侠25 分钟前
讲一讲 SpringMVC,线程变量 ThreadLocal 的使用
java·spring boot·intellij-idea
小哇66643 分钟前
第2篇:Spring Boot + WebSocket + 消息队列STOMP协议(Rabbitmq) 架构原理
后端·websocket
kuntli1 小时前
BIO NIO AIO核心区别解析
java
Javatutouhouduan1 小时前
京东内部强推HotSpot VM源码剖析笔记(2026新版)
java·jvm·java虚拟机·校招·java面试·java程序员·互联网大厂
2401_848009721 小时前
rabbitmq的高级知识-ttl与死信队列
分布式·rabbitmq·java-rabbitmq
imuliuliang1 小时前
怎么下载安装yarn
java
Victor3561 小时前
MongoDB(39)如何使用聚合进行过滤?
后端
曹牧1 小时前
在 Eclipse 中配置 Maven 和 Gradle 项目以支持增量打包
java·eclipse·maven
_olone1 小时前
牛客每日一题:显生之宙(Java)
java·开发语言·算法·牛客