格式化
格式化为字符串
${entity.name!}
格式化为数字
${entity.id?c}
格式化为时间
${detail.date?string("yyyy-MM-dd HH:mm:ss")}
格式化为金额
判断非空
<#if detail.aEntity?? && detail.aEntity.has?? && detail.aEntity.has==1>-- <#else>-- </#if>
取循环索引
<#list detailList as entity><td>索引:${entity_index}</td> </#list>
1. 直接访问
-
点操作符(
.
)${user.name}
这表示访问名为
user
的对象的name
属性。 -
方括号操作符(
[]
)${user["name"]}
这与上面的例子效果相同,但使用方括号允许你使用变量来动态指定属性名。
2. 访问嵌套对象
如果属性本身也是一个对象,可以继续用点或方括号操作符来访问其属性。
${user.address.city} | |
${user["address"].city} | |
${user["address"]["city"]} |
3. 列表和数组
对于列表(List)和数组,可以使用方括号和索引来访问元素。索引从0开始。
${users[0].name} |
4. 遍历集合
FreeMarker 提供了强大的列表指令来遍历集合,如list
(已废弃,推荐使用#list
)和#list
。
<#list users as user> | |
${user.name} | |
</#list> |