有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

JavaSpring:如何在映射之外声明名称/值对?

我需要在我的应用程序中设置一组名称/值对-有效地表示一个多对多映射(即键可以有多个值,反之亦然),所以Hashtable和Hashmap对我来说并不适用

我希望能够通过Spring以类似于<props>的格式声明这些属性,但当然这不会直接起作用,因为属性扩展了哈希表本身

也就是说,我想申报如下内容:

<entry>
   <key><value>KeyOne</value></key>
   <value>ValueOne</value>
</entry>
<entry>
   <key><value>KeyOne</value></key>
   <value>ValueTwo</value>
</entry>

在属性内部-但不能使用<map>, <props>,也看不到使用<set><list>的好方法。有什么好主意吗

我不一定需要像上面那样的映射式语法;但是现在我已经用HashMap实现了这段代码,它是由Spring设置的实际数据结构。在发现我的1-1地图真的是1-many甚至是many-many之后,我来了

谢谢


共 (1) 个答案

  1. # 1 楼答案

    将集合条目设置为简单字符串并解码键和值如何

    @Required
    public void setData(String[] data) {
        // split each data element into key and value at the comma
    }
    
    <property name="data">
        <list>
            <value>key,value</value>
            <value>key,value</value>
        </list>
    </property>
    

    这会做更多的工作,但会让您压缩XML