mirror of
				https://gitee.com/hhyykk/ipms-sjy.git
				synced 2025-10-31 18:28:43 +08:00 
			
		
		
		
	修改 rabbitmq 序列化方式,使用 Jackson2JsonMessageConverter 替代
This commit is contained in:
		| @@ -1,12 +1,11 @@ | ||||
| package cn.iocoder.yudao.framework.mq.rabbitmq.config; | ||||
|  | ||||
| import cn.hutool.core.util.ReflectUtil; | ||||
| import lombok.extern.slf4j.Slf4j; | ||||
| import org.springframework.amqp.utils.SerializationUtils; | ||||
| import org.springframework.amqp.support.converter.Jackson2JsonMessageConverter; | ||||
| import org.springframework.amqp.support.converter.MessageConverter; | ||||
| import org.springframework.boot.autoconfigure.AutoConfiguration; | ||||
| import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; | ||||
|  | ||||
| import java.lang.reflect.Field; | ||||
| import org.springframework.context.annotation.Bean; | ||||
|  | ||||
| /** | ||||
|  * RabbitMQ 消息队列配置类 | ||||
| @@ -18,12 +17,12 @@ import java.lang.reflect.Field; | ||||
| @ConditionalOnClass(name = "org.springframework.amqp.rabbit.core.RabbitTemplate") | ||||
| public class YudaoRabbitMQAutoConfiguration { | ||||
|  | ||||
|     static { | ||||
|         // 强制设置 SerializationUtils 的 TRUST_ALL 为 true,避免 RabbitMQ Consumer 反序列化消息报错 | ||||
|         // 为什么不通过设置 spring.amqp.deserialization.trust.all 呢?因为可能在 SerializationUtils static 初始化后 | ||||
|         Field trustAllField = ReflectUtil.getField(SerializationUtils.class, "TRUST_ALL"); | ||||
|         ReflectUtil.removeFinalModify(trustAllField); | ||||
|         ReflectUtil.setFieldValue(SerializationUtils.class, trustAllField, true); | ||||
|     /** | ||||
|      * Jackson2JsonMessageConverter Bean:使用 jackson 序列化消息 | ||||
|      */ | ||||
|     @Bean | ||||
|     public MessageConverter createMessageConverter() { | ||||
|         return new Jackson2JsonMessageConverter(); | ||||
|     } | ||||
|  | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 YunaiV
					YunaiV