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();
    }
}
相关推荐
IT 行者4 小时前
LangChain4j 集成 Redis 向量存储:我踩过的坑和选型建议
java·人工智能·redis·后端
brucelee1864 小时前
Spring Boot 测试最佳实践
spring boot·后端·log4j
一定要AK4 小时前
Java流程控制
java·开发语言·笔记
tryCbest4 小时前
Java和Python开发项目部署简介
java·开发语言·python
ZTLJQ4 小时前
任务调度的艺术:Python分布式任务系统完全解析
开发语言·分布式·python
派星4 小时前
如何分享自己写的 Go 包
后端
huabiangaozhi4 小时前
postgresql链接详解
java
snakeshe10104 小时前
从零理解 Spring 核心:IoC 容器与依赖注入,以及手写一个迷你版
后端
148614 小时前
Redis 删除缓存失败怎么办?重试、死信、补偿的工程化方案
后端
None3214 小时前
NestJS 流式文件上传实践:从 Multer 到 Busboy 的进阶之路
前端·后端