有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

来自Map<String,List<String>>的java Velocity表

我想在Velocity模板中创建一个表,该表从Map<String, List<String>>获取数据。我用嵌套的foreach循环进行了尝试,但由于某种原因,它不起作用(即使数据存在,也为空表)

将数据添加到我的模型中

model.put("downloaded", holder.getDownloadedFiles());

这将添加如上所述的贴图

我的模板:

<table >
<tr>
    <th style="width:150px">Subsystem</th>
    <th style="width:500px">Filename</th>
</tr>

#foreach( $system in $downloaded.keySet)
#foreach($file in ${downloaded.get($system)})
    <tr>
    #if($foreach.count == 1) ##do only once
        <td rowspan=$downloaded.get($system).size()>$system</td>
    #end
        <td>$file</td>
    </tr>

#end
#end
</table>

现在我很高兴有这样一个表(键应该是多列上的1个单元格):

key    value1
       value2
       value3
       value4
key2   value1
       value2
       value3
       value4

我是否正确访问变量并正确调用方法


共 (1) 个答案

  1. # 1 楼答案

    而不是

    #foreach( $system in $downloaded.keySet)
    

    对于外部循环,您应该使用

    #foreach( $system in $downloaded.keySet())