我有一个如下的哈希图

HashMap<String, String> testStatus = new HashMap<String, String>();
Map root = new HashMap();

public void fmTest() {

testStatus.put("one","1");
testStatus.put("two","2");
testStatus.put("three","3");
root.put("status", testStatus);
testStatus.clear();
}


我的FTL:

<#list status?keys as key>
${key} = ${status[key]}
</#list>


上面的代码只是一个例子。我的问题是,如果我循环testStatus哈希图在每个循环中具有不同的值,并在循环结束时清除...如何让freemarker显示每个循环中的testStatus哈希图的键值对。

如果我不清除testStatus哈希图,则会得到累积结果。但是,如果我清除testStatus哈希图,则freemarker不会显示任何内容。

最佳答案

HashMap<String, String> testStatus = new HashMap<String, String>();


将此声明放入fmTest方法中,然后每次调用该方法时,都会在根目录中放入一个新的Map,这样它们就不会被累积。

10-08 16:03