我想在Freemarker模板中循环遍历MultiMap并访问(显示)密钥及其不同的值(在这种情况下是对象):
这里TaskType是一个字符串(不要误解)
multiMap.put(TaskType.DHOLDING_TASK,Obj1);
multiMap.put(TaskType.BTRADE_TASK,Obj2);
multiMap.put(TaskType.ANONE,Obj3);
multiMap.put(TaskType.DHOLDING_TASK,Obj4);
multiMap.put(TaskType.CPRICE_TASK,Obj5);
multiMap.put(TaskType.BTRADE_TASK,Obj6);
multiMap.put(TaskType.ANONE,Obj7);
multiMap.put(TaskType.CPRICE_TASK,Obj8);
输出看起来像是MultiMap:
{CPRICE_TASK=[Obj5, Obj8], ANONE=[Obj3, Obj7], BTRADE_TASK=[Obj2, Obj6], DHOLDING_TASK=[Obj1, Obj4]}
我的freeMarker代码:
<#assign taskKeys = multiMap?keys >
<#list taskKeys as key>
${key} --It works fine till here :-)
`taskList[key] or taskList[key_values]---XXX both gives exception
如何在列表???中显示与密钥关联的多值
我需要访问这里对的值部分(即RHS):CPRICE_TASK=[Obj5, Obj8]
非常感谢帮助:)
答案 0 :(得分:0)
感谢ddekany的回复.. :) 但是,我可以找到答案,这是自由标记代码中的错误。我按键重复
<#list taskList?keys as taskType>
这很好..之后我应该迭代与键相关的列表(即多个值),因为它是一个google multimap.Like:
<#assign values = taskList?values>
<#list values[taskType_index] as task>
我想我的代码中缺少了assign标签。在访问键的值时。 希望这会对某人有所帮助。