Spring JMS:我需要两个jmsListenerConnectionFactory bean吗?

时间:2015-02-17 19:18:41

标签: spring-jms

24.6.1 Enable listener endpoint annotations

我对Spring JMS文档中的这一部分感到困惑。我想注释我的JMS端点,我的应用程序中有队列和主题监听器。

但是,DefaultJmsListenerConnectionFactory具有Boolean pubSubDomain属性。文档显示标准bean名称为“jmsListenerContainerFactory”的单个文档,JavaConfig代码示例将其显示为“pubSubDomain = null”(例如,未设置)。

此属性的“null”是否表示此默认基础结构bean支持BOTH主题和队列?

或者,我是否需要设置2个(一个用于队列,一个用于主题)?如果是这样,“主题”与“队列”的标准bean的名称是什么?

1 个答案:

答案 0 :(得分:1)

目前还不太清楚你在问什么。注释上提供了常用属性。

侦听器容器工厂为使用它的[all] @JmsListener提供了一组其他常用属性。

默认情况下,您会获得一组默认属性(例如cacheLevelpubSubDomainmessageConverter

您可以通过定义名为jmsListenerContainerFactory的bean来覆盖应用于没有显式容器工厂集的所有侦听器的默认值。

如果您希望某些其他侦听器子集具有与默认属性不同的属性,则需要显式定义其他容器工厂bean,并使用该工厂配置相应的侦听器。