我正在使用像Rabbitmq那样的队列消息
@RabbitListener(queues = "#{'${rabbitmq.queues}'.split(',')}" )
public void processOrder(@Payload String data, @Header(AmqpHeaders.CONSUMER_QUEUE) String queue) {
我在记录器中打印的数据似乎是字节,它的打印值是这样的:116,104,114,116,104,114,116,104,114 我应该做什么以及如何取悦?反序列化?
答案 0 :(得分:3)
默认SimpleMessageConverter
只能处理String和序列化的Java对象。它不理解的任何内容类型都以byte []的形式返回。
字符串的content_type
应为text/plain
。
您的讯息内容是什么?消息是否具有content_type
属性?如果是这样,有什么价值?
如果它是JSON(和application/json
)你需要Jackson2JsonMessageConverter
,但我看到你期待String,所以我怀疑它只是缺少的content_type
属性。