我希望在spring.xml中创建一个地图。我能得到的最接近的是一份清单
<bean id="transformerHelper" class="com.common.TransformerHelper">
<property name="srcSystemIDList" value="{T(java.util.Arrays).asList({'11','50'},{'41','50'}) }" />
</bean>
但是我真的需要在地图中使用这些值,在搜索键11或41时我可以返回50.我需要在Spring中定义这个元数据,因为它将远离应用程序存储。
答案 0 :(得分:2)
请参阅this doc的A.2.2.5节,并注意此示例:
<util:map id="emails">
<entry key="pechorin" value="pechorin@hero.org"/>
<entry key="raskolnikov" value="raskolnikov@slums.org"/>
<entry key="stavrogin" value="stavrogin@gov.org"/>
<entry key="porfiry" value="porfiry@gov.org"/>
</util:map>
答案 1 :(得分:0)
请参阅链接:converting-static-2d-string-array-to-hashmap并使用init方法或在bean类中实现InitializingBean。
答案 2 :(得分:0)
有一种方法,我建议在你的类中添加另一个属性,一个包含所有地图值(键和值)的String,就像你已经拥有的那样:
{'11','50'},{'41','50'},{'12','34'}
然后,不是注入地图,而是注入字符串并在其中使用setter方法(如果使用setter注入)调用一个小方法(由您创建),该方法将解析该字符串并填充地图,使用{{1或者你喜欢什么。