当我在XML文件中配置RabbitMQ时,我试图理解Spring RabbitMQ代码。 在接收器xml文件中,我有
<rabbit:queue id="springQueue" name="spring.queue" auto-delete="true" durable="false"/>
<rabbit:queue name="springQueue" auto-delete="true" durable="false"/>
<rabbit:listener-container connection-factory="connectionFactory">
<rabbit:listener queues="springQueue" ref="messageListener"/>
</rabbit:listener-container>
<bean id="messageListener" class="com.ndpar.spring.rabbitmq.MessageHandler"/>
<!-- Bindings -->
<rabbit:fanout-exchange name="amq.fanout">
<rabbit:bindings>
<rabbit:binding queue="springQueue"/>
</rabbit:bindings>
</rabbit:fanout-exchange>
我的问题是 - 交换所绑定到哪个队列? springQueue或spring.queue ??我的意思是,在标签中问,它是指队列ID还是队列名称?同样在标签中,属性'queues'指的是队列ID或队列名称?请帮忙。我查看了模式(xsd),但无法清晰。请帮忙。
答案 0 :(得分:1)
queues
(在侦听器中)和queue
(在绑定中)应该引用队列id
属性。
在侦听器中,您可以使用queue-names
属性中的队列名称,但绑定始终需要id。