1

我们可以在 spring 中注入一个 bean,如下所示:

<bean id="injectCollection" class="CollectionInjection">
    <property name="map">
        <map>
            <entry key="someValue">
                <value>Hello World!</value>
            </entry>
            <entry key="someBean">
                <ref local="oracle"/>
            </entry>
        </map>
    </property>
</bean>

如果我的键是由两个字符串组成的复合键,我该如何注入?它将如何显示在属性文件中?

4

2 回答 2

2

不仅是映射,我们还可以注入一个列表,其中包含多个字符串/类作为 bean 中的键

<bean id="injectCollection" class="CollectionInjection">
    <property name="fruits">
        <list>
            <ref bean="apple" />
            <ref bean="banana" />  
        </list>
    </property>
</bean>
于 2012-08-06T05:58:47.743 回答
0

你有几种方法可以做到这一点。虽然使用 List 作为键,对我来说听起来一点也不好,但我希望你对此有一个非常具体的要求。

嗯,这是一种方式,

<bean id="myBean" class="spring.beans.MapWrapper">
    <property name="map">
        <map>
            <entry>
                <key>
                    <list>
                        <value>keyA</value>
                        <value>keyB</value>
                    </list>
                </key>  
                <value>value1</value>
            </entry>
        </map> 
    </property>
</bean>

在此示例中,您有一个 bean,其中包含一个列表作为键。该列表由“keyA”和“keyB”组合而成。键的值将是“value1”。

于 2012-08-07T14:10:05.630 回答