我在rabbitMQ中有2个队列,queueA
和queueB
当queueA
和/或queueB
填充数据时(通过convertAndSend()
方法),它会自动调用MessageListener.onMessage()
方法(CMIIW)。
所以,我的问题是,当methodA()
填满时,如何拨打queueA
,并在填充methodB()
时致电queueB
。
不同队列的不同方法
答案 0 :(得分:1)
您可以使用两个侦听器容器(每个队列一个)并使用配置为MessageListenerAdapter
为每个队列调用适当的方法(请参阅setDefaultListenerMethod()
)。
您可以使用单个侦听器容器来侦听这两个队列,并使用子类MessageListenerAdapter
并实现getListenerMethodName()
来根据消息确定要调用的方法。从Spring AMQP 1.4.2版开始,
originalMessage.getMessageProperties().get(AmqpHeaders.CONSUMER_QUEUE)