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();
    }
}
相关推荐
杰克尼1 分钟前
蓝桥云课-5. 花灯调整【算法赛】
java·开发语言·算法
wanghowie3 分钟前
01.02 Java基础篇|核心数据结构速查
java·开发语言·数据结构
乂爻yiyao7 分钟前
java并发演进图
java
java1234_小锋8 分钟前
Redis6为什么引入了多线程?
java·redis
9号达人12 分钟前
支付成功订单却没了?MyBatis连接池的坑我踩了
java·后端·面试
看见繁华14 分钟前
C++ 设计模式&设计原则
java·c++·设计模式
爱笑的眼睛1121 分钟前
超越AdamW:优化器算法的深度实现、演进与自定义框架设计
java·人工智能·python·ai
qq_3363139322 分钟前
java基础-stream流练习
java·开发语言·python
用户4973573379823 分钟前
【轻松掌握通信协议】C#的通信过程与协议实操 | 2024全新
后端
草莓熊Lotso24 分钟前
C++11 核心精髓:类新功能、lambda与包装器实战
开发语言·c++·人工智能·经验分享·后端·nginx·asp.net