如何在freemarker中迭代hashmap。我使用的是2.3.23版本,无法从hashmap中获取值。我正在使用以下命令:
<#list hashMap?keys as key>
${key} = ${hashMap.get(key)}
<#list>
我甚至试过以下方法:
<#list hashMap?keys as key>
${key} = ${hashMap[key]}
<#list>
它表示该值为空。但是,我检查了数据,每个键都有一个值。我无法将freemarker版本升级到2.3.25
有人能帮我一下吗。
1条答案
按热度按时间bweufnob1#
通常,问题是你的钥匙
String
-s、 但是有些java对象不仅仅是数字/日期/布尔值。这样的“杂项”对象可用作ftl字符串,因此您可以直接打印它们(并在内部调用它们)obj.toString()
). 因此hashMap[key]
不会抱怨的key
不是ftl字符串(因为它是),而是基本上是hashMap.get(key.toString())
,然后你就有了你的null
.因为你不能更新到2.3.25,在那里你可以使用
<#list hashMap as key, value>
,你必须使用?api
(我希望你能给我打电话?api
在配置中):