嗨,在使用spring-boot-starter-freemarker时,谁能帮助我了解如何在ftl文件中使用循环,如果我传递了动态数组,我应该可以在表中将其打印出来,
</table>
</thead>
<tbody>
<#list ObjectList as list>
<tr>
<td>${list.firstname}</td>
<td>${list.lastname}</td>
</tr>
</#list>
</tbody>
</table>
如果每次我都应该使用新列更新该ftl文件时字段增加,则我专门设置该列,请让我知道动态循环的方式,以便它占用我添加的列数
答案 0 :(得分:0)
我会假装您的示例中有<#list objects as object>
,因为这些变量名更易于理解。您可以在firstName
之类的对象中列出子变量(例如<#list object?values as value><td>${value}</td></#list>
),但是会出现问题,就像您也列出该对象的类一样(因为存在{{1} }方法),您可能会列出无法直接打印的值(就像方法一样,您必须使用object.getClass()
进行过滤)。因此,代表该表(?is_method
)的对象应该提供列名列表,然后您可以更好地控制显示的内容:objects
。当然,您肯定也需要从某个地方获取标头名称,因此某种元数据将必须来自某个地方。另外,使用自定义<#list objects.columnNames as columnName><td>${object[columnName]}</td></#list>
(配置设置),您还可以使用批注标记所需的吸气剂,但这是更高级的主题。