Я хочу поделиться одним экземпляром JMSTemplate для нескольких производителей, подключающихся к брокеру ActiveMQ. Пример конфигурации:Можно ли использовать JMSTemplate в нескольких производителях?
<bean id="ProducerJmsTemplate" class="org.springframework.jms.core.JmsTemplate">
<property name="connectionFactory">
<ref bean="gloProducerJmsFactory" />
</property>
</bean>
<bean id="pnlMessageProducer1" class="glo.business.core.FAGSCompletionMessage1"
p:jmsTemplate-ref="ProducerJmsTemplate"
p:messageDestination-ref="topic_loadGearTb1"
</bean>
<bean id="pnlMessageProducer2" class="glo.business.core.FAGSCompletionMessage2"
p:jmsTemplate-ref="ProducerJmsTemplate"
p:messageDestination-ref="topic_loadGearTb2"
</bean>
Могу ли я использовать вышеуказанную конфигурацию?
Как уже упоминалось здесь: http://docs.spring.io/spring/docs/current/spring-framework-reference/html/jms.html
Экземпляры класса JmsTemplate потокобезопасны после настройки. Это важно, потому что это означает, что вы можете настроить один экземпляр JmsTemplate, а затем безопасно ввести эту общую ссылку в несколько соавторов. Чтобы быть ясным, JmsTemplate является сдержанным, поскольку он поддерживает ссылку на ConnectionFactory, но это состояние не является диалоговым.
Спасибо,
Anuj