如何正确转换RabbitMQ的消息?

时间:2016-06-08 20:58:40

标签: java spring rabbitmq

我正在尝试从Rabbit转换消息,因此,我开始使用转换器。

我有这样的听众

@Bean(name = "myMessageListener")
    @DependsOn("myQueue")
    MessageListener messageListener(@Qualifier("myMessageConverter") MessageConverter messageConverter) {
        return new myEventListener(messageConverter);
    }

所以,在我的听众课上

public void onMessage(Message message){
    final MyClass myObject = (MyClass) messageConverter.fromMessage(message);

在这里我得到一个施法错误,无法转换。

MyClass是一个2字段对象:ID和Name

如果我执行以下操作,我可以成功转换它

byte[] body = message.getBody();
ObjectMapper mapper = new ObjectMapper();
String jsonInString = new String(body)
MyClass myObject = mapper.readValue(jsonInString, MyClass.class);

但当然,似乎不是一个很好的解决方案。

有没有更优雅/雄练的解决方案来解决这个问题?

感谢。

0 个答案:

没有答案