RabbitMQ:消息转化器

目录


一、基本概述

在RabbitMQ中,一般情况下传递字符串会被正常解析,如果传递的是一个Object类型或者是一个对象类型的时候,RabbitMQ会将其自动转化为字节码发送,这不利于我们的读取个解析。

二、如何处理

使用jackson-databind解决Object类型或者对象不能序列化的问题。注意:需要在生产者与消费者服务中都要进行注册

xml 复制代码
<dependency>
	<groupId>com.fasterxml.jackson.core</groupId>
	<artifactId>jackson-databind</artifactId>
</dependency>
java 复制代码
package com.ming.config;

import org.springframework.amqp.support.converter.Jackson2JsonMessageConverter;
import org.springframework.amqp.support.converter.MessageConverter;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * RabbitMQ 基础配置
 */
@Configuration
public class RabbitmqConfig {
    /**
     * 序列化RabbitMQ的消息
     * @return MessageConverter
     */
    @Bean
    public MessageConverter messageConverter() {
        return new Jackson2JsonMessageConverter();
    }
}