Oz *_*aim 11 java spring rabbitmq spring-rabbit spring-amqp
我将 RabbitMQ 与 Spring 的 RabbitTemplate 一起使用。
使用模板发送方法向队列发送消息时,如果队列不存在,我希望自动创建/声明队列。
这很重要,因为根据我们的业务逻辑队列名称是在运行时生成的,我不能提前声明它们。
以前我们使用过 JmsTemplate 并且任何发送或接收的调用都会自动创建队列。
您可以使用 RabbitAdmin 自动声明交换、队列和绑定。查看此线程以获取更多详细信息。这个论坛也与您的场景有关。不过,我还没有尝试过使用 AMQP 进行 spring,但我相信这会做到。
/**
 * Required for executing adminstration functions against an AMQP Broker
 */
@Bean
public AmqpAdmin amqpAdmin() {
    return new RabbitAdmin(connectionFactory());
}
继续编码!
是的,您可以使用RabbitAdminandadmin.getQueueProperties()查看队列是否存在以及admin.declareQueue(new Queue(...))添加队列。您可能应该跟踪您已经检查/创建的那些,以避免每次发送的开销。
您还可以使用管理员添加交换器并将队列绑定到它们。
| 归档时间: | 
 | 
| 查看次数: | 8205 次 | 
| 最近记录: |