【发布时间】:2020-05-14 07:47:38
【问题描述】:
对于 Spring JMS 4.3.19 和 5.2.5,我正在尝试为持久订阅设置 JMSListener:
@JmsListener(destination = "test", subscription = "Consumer.Test", connectionFactory = "factory")
public void receiveFromDurableSub(String message) {
System.out.println("receiveFromTest: " + message);
}
但它最终出现在Consumer\\.Test。对于地址,它以某种方式起作用。
如何避免这些反斜杠?
【问题讨论】:
-
用于持久订阅的实际名称并不重要,因为它将基于通过 JMS API 设置的客户端 ID 和订阅名称。为什么这对您来说是个问题?
-
如果您想将消息发送到专用的消费者队列,您可以使用 FQQN。如果您通过 jmsTemplate 执行此操作,则需要添加那些斜杠,否则它将不起作用。如果您使用不同的客户端,例如stomp,你只需要一个斜线而不是两个。因此,如果有可能使其统一,那就更好了。此外,地址也没有斜线,所以这在某种程度上是不统一的。
-
你为什么需要使用FQQN?很少有人愿意这样做。
标签: spring-boot spring-jms activemq-artemis