我们的项目有两个应用程序上下文:
目前,每个文件都有重复的bean定义。因此,例如,以下bean将位于每个应用程序上下文中:
<bean id="foo "class="com.foo">
<property name="bar">
<ref local="bar"/>
</property>
</bean>
计划是为bean定义创建另一个文件,以便我们可以重用bean,但是,如果我们将上面的xml段放到它自己的文件中,就不会引用bar
有一种简单的方法可以解决这个问题吗?
请注意,bar
在每个应用程序上下文中都会有所不同。
谢谢!
答案 0 :(得分:3)
<ref local="bar"/>
具有特定含义 - 这意味着bar
必须在同一个文件中定义。在你的情况下,这太严格了,所以稍微放松一下:
<bean id="foo "class="com.foo">
<property name="bar" ref="bar"/>
</bean>
然后使用<import resource="...">
在需要的地方导入此文件。
这样,bar
必须仍然存在,但它可以存在于上下文的任何文件中,或者存在于任何父上下文中。
答案 1 :(得分:1)
当然,请使用导入到两个xml文件中的公共上下文文件。
<import resource="/common"/>