我如何检测队列的删除然后重新声明它

How do I detect the deletion of a queue and then re-declare it

我的应用程序将在启动时创建一个 auto-delete 的队列。应用环境可能会掉网,rabbitmq server会删除queue,所以网络恢复后,listener会继续报错:queue cannot be found。我该如何检测并重新创建队列?

使用cachingConnectionFactory.setCloseExceptionLogger怎么样?

如果添加 Queue @BeanRabbitAdmin @Bean,管理员将在每次打开连接时重新声明队列。它在连接工厂中将自己注册为 ConnetionListener

the documentation