RabbitMQ使用Spring boot,如果队列不存在则应创建

问题描述 投票:0回答:1

我正在从多个源向 RabbitMQ 发送数据,如果队列不存在,我想创建它。

public void sendMessage(String message, String routingKey) {
        rabbitTemplate.convertAndSend(routingKey, message);
}
spring-boot rabbitmq spring-rabbit
1个回答
0
投票

请参阅文档 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();
}

如果队列已存在,则它必须具有相同的属性和参数。

© www.soinside.com 2019 - 2024. All rights reserved.