0

我正在使用 Spring 2.5 ,这个想法是这样的:

<util:list id="europe" >
    <ref bean="France" />
    <ref bean="England" />
    <ref bean="Spain" />
</util:list>

<util:list id="america" >
    <ref bean="Mexico" />
    <ref bean="Brazil" />
    <ref bean="USA" />
</util:list>

<util:list id="world" >
       <!-- copy elements from list "europe" -->
       <!-- copy elements from list "america" -->
</util:list>

可能吗 ?

4

1 回答 1

2

我认为不支持开箱即用。

对于 Spring 2.5,您可以执行类似的操作

<bean id="tmpList" class="org.apache.commons.collections.ListUtils"
    factory-method="union">

    <constructor-arg ref="europe" />
    <constructor-arg ref="america" />   
</bean>

<bean id="world" class="org.springframework.beans.factory.config.ListFactoryBean">
    <property name="sourceList" ref="tmpList" />
</bean>

从 3.0 开始(使用 Spel)

<bean id="world" class="org.springframework.beans.factory.config.ListFactoryBean">
    <property name="sourceList" 
        value="#{ T(org.apache.commons.collections.ListUtils).union(@europe, @america) }" />
</bean>
于 2013-10-23T00:02:52.990 回答