gpt4 book ai didi

java - freemarker可以用来输出自定义集合吗?

转载 作者:行者123 更新时间:2023-11-30 05:14:41 25 4
gpt4 key购买 nike

可以使用freemarker循环遍历集合并输出集合中每一项的属性吗?

此集合属性将是动态的,即不能进行硬编码,将从数据库生成。

我正在寻找:能够指向不同的数据库,并循环遍历每个表并输出表列。

最佳答案

可能,尽管这取决于 Java 领域数据的结构。 Freemarker 处理集合的基本操作(哈希、序列)。如果你有 Java 中的 Map,Freemarker 会让你像“哈希”一样使用它(你可以直接获取它的键),而 Java 中的列表看起来就像 Freemaker 中的“序列”。

如果你有,比如说,在 Java 中,一个 List<List<String>>代表一个表列表,那么你可以像这样在 FTL 中遍历它们:

<#-- getMyTables() is a call into the primary template model object -->
<#assign myTables = getMyTables() />
<#list myTables as table>
<#list table as column>
${column}
</#list>
</#list>

如果您的集合是未实现 List 或 Map 接口(interface)的自定义类,那么您当然可以直接访问它们的方法(Freemarker 支持直接访问其模板模型上的方法以及您可以从模板中获取的任何内容)模型)。例如

<#-- getMyTablesAsList() is a call into the primary template model object -->
<#assign myTables = getMyTablesAsList() />
<#list myTables as table>
<#list table.getColumnNames() as column>
${column}
</#list>
</#list>

关于java - freemarker可以用来输出自定义集合吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2018182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com