我需要在我的应用程序中设置一组名称/值对 - 有效地表示多对多地图(即键可以有多个值,反之亦然),所以Hashtable和Hashmap不是真的为我工作。
我希望能够以类似于<props>
的格式通过Spring声明这些,但当然这不会直接起作用,因为Properties会扩展Hashtable本身。
IE,我希望能够声明这样的内容:
<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甚至很多之后,我在这里。
感谢。
答案 0 :(得分:3)
如何将集合条目设置为简单字符串并解码密钥和值?
@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。