SimpleMessageListenerContainer为每个侦听器分隔队列(java配置)

时间:2016-03-04 04:59:57

标签: spring-amqp

我正在尝试将以下xml配置转换为java配置。此配置提到listener1将从queue1和listener2从queue2

检索消息
<rabbit:listener-container connection-factory="connectionFactory">
    <rabbit:listener ref="listener1" queues="queue1" />
    <rabbit:listener ref="listener2" queues="queue2" />
</rabbit:listener-container>

使用java配置,我做了以下操作:

SimpleMessageListenerContainer container = new SimpleMessageListenerContainer(connectionFactory());
container.setQueues(queue1(), queue2());
container.setMessageListener(messageListenerAdapter1());
container.setMessageListener(messageListenerAdapter2());

使用此配置,如何配置listener1以从queue1和listener2检索消息以从queue2检索消息?

1 个答案:

答案 0 :(得分:4)

XML配置解析器为每个SimpleMessageListenerContainer元素创建一个新的<rabbit:listener />

一个容器只能有一个监听器; XML只是一种方便的方法,可以使用公共属性(来自<rabbit:listener-container/>元素)连接多个容器。