如何将来自RabbitMQ的JSON消息转换为Java对象?

Bre*_*ett 0 java spring json rabbitmq spring-rabbit

我有两个独立的Java应用程序,我需要使用spring-rabbit通过RabbitMQ发送消息.在作为生产者的应用程序中,我使用它JsonMessageConverter作为消息转换器,以便RabbitTemplate在将Java对象发送到队列之前将其转换为JSON消息.

在另一个应用程序中,我想将JSON消息转换回Java对象.我尝试使用SimpleMessageListenerContainer自定义MessageListener,我可以Message从队列中获取s,但我不知道将它们从JSON转换回Java对象.

JsonMessageConverter从RabbitMQ异步消费消息时如何使用?

Bre*_*ett 5

我最终使用了MessageListenerAdapter一个自定义委托对象,并JsonMessageConverter作为MessageConverter.像这样:

SimpleMessageListenerContainer listenerContainer = new SimpleMessageListenerContainer();
listenerContainer.setMessageListener(new MessageListenerAdapter(new EventHandler(), new JsonMessageConverter()));
Run Code Online (Sandbox Code Playgroud)

我的EventHandler类有一个名为handleMessage的方法,它获取传递给它的反序列化JSON对象.