java - 在 Thymeleaf 中将 map 渲染到表中的 EL 语法是什么?

标签 java html spring-mvc dictionary thymeleaf

我有一张 map ,想将其渲染到 Thymeleaf 中的表格中。每个键都是一个文档标题,每个值都是一个整数,显示关键字在该文档中出现的次数。

HTML:

<table class="table table-striped table-bordered table-hover">
   <tr>
      <td>Document Title</td>
      <td>Keyword Count</td>
   </tr>
   <tr th:each="m : ${map}">
      <td th:text="${m} + '(' + ${map.get(key)} + ') '"></td>
      <td th:text="${m} + '(' + ${map.get(value)} + ') '"></td>
   </tr>
</table>

map :

   Map<String, Integer> map = combineListsIntoOrderedMap(formattedLinks, countList);

   private static Map<String, Integer> combineListsIntoOrderedMap(List<String> keys, List<Integer> values) {
        if (keys.size() != values.size())
            throw new IllegalArgumentException("Cannot combine lists with dissimilar sizes.");
        Map<String, Integer> map = new LinkedHashMap<>();
        for (int i = 0; i < keys.size(); i++) {
            map.put(keys.get(i), values.get(i));
        }
        return map;
    }

我的输出是一个如下所示的表格:

Document Title  | Keyword Count
http://www.example.com/doc.doc=1(null) | http://www.example.com/doc.doc=1(null)

它应该看起来像:

Document Title  | Keyword Count
http://www.example.com/doc.doc | 1

最佳答案

您可以像这样使用keyvalue:

<tr th:each="m : ${map}">
    <td th:text="${m.key}">key</td>
    <td th:text="${m.value}">value</td>
</tr>

关于java - 在 Thymeleaf 中将 map 渲染到表中的 EL 语法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43916860/

相关文章:

java - 谁能解释 servlet 映射?

java - 如何在 Jquery 中使用 modelAttribute 值作为选择框

javascript - 如何在前端外部 javascript 文件中使用库模块?

Spring 3.1 MVC框架 session 管理

用于生成给定 JSON 字符串的 Java 类

java - Spring Data Neo4J 存储库 findAll() 导致 nullpointerexception

java - h2 数据库的 jdbc 连接字符串是什么?

java - 如何将 JSON 值发送到另一个 Activity(Android)

javascript - 在 Javascript 中使用比例调整 div 大小(不使用 Jquery)

javascript - 未在按钮上设置内联 css