如何在 JSF 中的数据表上显示映射<字符串、映射<字符串、字符串>>的结果?



Using JSF:

是否可以迭代值包含Maps 的Map

我有一个看起来像这样的Map

Map<String, Map<String, String>> myMap;

我想遍历myMap并在表格中显示结果。

是的,您可以肯定,每个地图都可以迭代以获取条目集,在这种情况下您需要迭代两次,因为您在地图中有一个地图......

例:

public static void main(String args[]) {
Map< String, Map < String, String >> foo = new HashMap<String, Map < String, String >>();
for (Entry<String, Map<String, String>> fooEntry : foo.entrySet()) {
System.out.println(fooEntry.getKey());
for (Entry<String, String> fooValueEntry : fooEntry.getValue().entrySet()) {
System.out.println(fooValueEntry.getKey());
System.out.println(fooValueEntry.getValue());
}
}
}

JSF 数据表组件当前不支持映射上的迭代 (JSF 2.2)。 你将不得不做一些转换工作或使用c:forEach。

更多关于这里的信息:在h:dataTable中使用java.util.Map

相关内容

最新更新