2017-04-17 190 views
5

考虑我在beans.xml中是这样的:春天。如何将相同的属性添加到多个bean?

<bean id="emails" class="org.some.package.SomeClass"> 
    <property name="emailList"> 
    <list> 
    <value>[email protected]</value> 
    <value>[email protected]</value> 
    <value>[email protected]</value> 
    <value>[email protected]</value> 
    </list> 
</property> 
</bean> 

但我需要的emailList属性添加到多个豆。我怎么能做到这一点,而不写入每个bean的属性?可以将属性外部化并将其注入到每个bean中?

我希望是这样的:

<property name="commonProp"> 
    <list> 
    <value>[email protected]</value> 
    <value>[email protected]</value> 
    <value>[email protected]</value> 
    <value>[email protected]</value> 
    </list> 
</property> 

<bean id="emailsOne" class="org.some.package.ClassOne"> 
    <property name="emailList" ref="commonProp" /> 
</bean> 

<bean id="emailsTwo" class="org.some.package.ClassTwo"> 
    <property name="emailList" ref="commonProp" /> 
</bean> 

回答

4

您可以用做:UTIL:列表

<util:list id="myList" value-type="java.lang.String"> 
     <value>foo</value> 
     <value>bar</value> 
    </util:list> 

然后使用在其他豆类这个myList中参考。

相关问题