我有两个ConnectionFactory(不同的代理)的应用程序。它们配置了java类:
@Bean
public ConnectionFactory ...
@Bean
public Queue ...
...
在rabbittemplate中,您可以指示连接,但不能在队列或交换中指示,因此它们是在两个连接中创建的。 我是否必须使用RabbitAdmin仅在两个连接中的一个中创建队列?还有其他办法吗?
答案 0 :(得分:4)
请参阅the documentation : Conditional Declaration。
从1.2版本开始,可以有条件地声明这些元素。当应用程序连接到多个代理并且需要指定应声明特定元素的代理时,这尤其有用。
每个连接工厂都需要RabbitAdmin
,并使用declared-by
来指示哪些管理员应声明每个队列/交换/绑定。