使用p namespace我们可以定义如下属性:

<bean id="myBean" class="MyBeanClass"
p:name="abc"
p:address="hell">
</bean>


但是我们如何使用p名称空间注入以下属性?

<property name="myproperty">
        <map>
            <entry key="Key 1" value="1" />
            <entry key="Key 2" value-ref="PersonBean" />
                 ...
        </map>
    </property>


谢谢...

最佳答案

您需要混合两种样式:

<bean id="myBean" class="MyBeanClass"
    p:name="abc"
    p:address="hell">

    <property name="myproperty">
        <util:map>
           <util:entry key="Key 1" value="1" />
           <util:entry key="Key 2" value-ref="PersonBean" />
             ...
        </util:map>
    </property>
</bean>


我希望这是问题的答案。

如果您确实询问过以下问题:

<bean id="myBean" class="MyBeanClass"
   p:name="abc"
   p:address="hell"
   p:myProperty="'Key 1'='1';'Key 2'=PersonBean"  >
</bean>


问问自己是否真的要阅读这样的代码(不,这个语法不存在,这只是一个示例,说明它的可读性)

关于java - 使用p: namespace 注入(inject) map 类型的属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9064959/

10-09 22:15