使用Spring AMQP + RabbitMQ(Spring Boot)自动连接交换,队列和绑定

时间:2015-01-30 15:33:01

标签: rabbitmq spring-boot spring-amqp

Messaging with RabbitMQ的Spring文档中,rabbitTemplatequeueexchangebinding都是由Spring Boot设置的。我不明白的是rabbitTemplate.convertAndSend(...)如何将它发送到创建的交换机,因为方法调用没有指定交换,它只包括路由密钥(通过队列名称)和消息本身 - 我想隐含地将消息发送到默认交换而不是创建的交换。由于路由密钥与队列名称匹配,因此消息将到达预期的队列。

如果我想指定交换和路由密钥,请使用此API方法:

// Convert a Java object to an Amqp Message and send it to
// a specific exchange with a specific routing key.
convertAndSend(String exchange, String routingKey, Object object);

...如何获取对创建的 exchange的引用?

感谢。

1 个答案:

答案 0 :(得分:3)

启动RabbitAutoConfiguration仅注册连接工厂,RabbitAdmin一个RabbitTemplateRabbitMessagingTemplate

该指南声明了自己的交换,队列和绑定。

您可以正常@Autowire交换,并致电getName()