如何在单个应用程序中重用spring集成bean?

时间:2014-05-02 10:37:28

标签: spring spring-integration

我正在使用spring集成来创建具有JMS端点的多个服务(每个服务在自己的JVM中运行)。

一旦添加了重试,异常处理等,配置就不再是微不足道了。我已将spring集成移动到其自己的上下文文件中,并将其导入所有服务以进行一致的设置。

例如

<import resource="classpath:/spring/jmsEndpoint.xml"/>
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="properties">
        <props>
            <prop key="queueName">myServiceQueue</prop>
        </props>
    </property>
</bean>

<alias name="myBusinessLogic" alias="abstractJmsEndpoint"/>
<bean id="myBusinessLogic" class="..."/>

这种配置允许我保持每个单独的服务配置简单,只需要覆盖抽象bean并设置一些属性。

问题是我现在想要在同一服务(jvm)中使用多个jms端点。由于我无法多次导入jmsEndpoint.xml,重用配置的最佳方式是什么

1 个答案:

答案 0 :(得分:2)

请参阅dynamic-ftp示例 - 它使用一种创建参数化应用程序上下文实例的技术,将不同的专业内容传递给每个实例。在儿童需要访问共享资源的情况下,它的README还有关于如何使这些上下文成为主要上下文的子论坛的论坛讨论的链接。