我想使用Spring Boot为ActiveMQ配置专用使用者 使用Java进行配置很容易
queue = new ActiveMQQueue("TEST.QUEUE?consumer.exclusive=true");
consumer = session.createConsumer(queue);
但是在Spring引导中,侦听器的配置如下。
@JmsListener(destination = "TEST.QUEUE", containerFactory = "myFactory")
public void receiveMessage(Object message) throws Exception {
......
}
现在,如何使这个独家消费者成为可能?以下工作正常吗?
@JmsListener(destination = "TEST.QUEUE?consumer.exclusive=true", containerFactory = "myFactory")
public void receiveMessage(Object message) throws Exception {
......
}
答案 0 :(得分:0)
是的,它是这样工作的。
只需为org.apache.activemq.command.ActiveMQQueue
构造函数设置一个断点,然后在调试模式下运行您的应用程序即可。
您会看到Spring Boot正在调用
new ActiveMQQueue("TEST.QUEUE?consumer.exclusive=true")
对应于ActiveMQ官方文档:
https://activemq.apache.org/exclusive-consumer
更重要的是,您可以转到ActiveMQ管理员并浏览此队列的活动使用者:现在,您将看到您的使用者的独占标志设置为true。