我正在从多个源向 RabbitMQ 发送数据,如果队列不存在,我想创建它。
public void sendMessage(String message, String routingKey) {
rabbitTemplate.convertAndSend(routingKey, message);
}
请参阅文档 https://docs.spring.io/spring-amqp/docs/current/reference/html/#broker-configuration。
使用 Spring Boot,您只需要添加一个
Queue
@Bean
,因为 Boot 会自动配置一个 RabbitAdmin
bean,它会在连接首次打开时找到它并配置它。
您还可以添加交换和绑定。
@Bean
public Queue queue() {
return QueueBuilder.nonDurable("foo")
.autoDelete()
.exclusive()
.withArgument("foo", "bar")
.build();
}
如果队列已存在,则它必须具有相同的属性和参数。