Java模板引擎FreeMarker系列之五FreeMarker集合(List、Map)
接口认识FreeMarker集合(List、Map)
序列(List)
定义序列
1
2
3
4
5
|
<#-- 定义序列 --> <#assign mynums=[11,12,13,14,15,16,17,18,19]/> <#list mynums as mn> ${mn} </#list> |
拆分序列
1
2
3
4
5
6
|
<#-- 拆分序列 --> <#-- 这里是将mynums序列中下标从 3 到 6 之间的元素拆分出来,组成一个新的序列 --> <#assign mynum01=mynums[ 3 .. 6 ]/> <#list mynum01 as mn01> ${mn01} </#list> |
字符串的拆分
1
2
|
${ "你好,你来了吗今天看书了吗!" [ 0 .. 8 ]}... 你好,你来了吗今天... |
连续序列
1
2
3
4
5
6
7
8
9
|
<#-- 连续序列 --> <#-- 从 55 到 58 :注意此时若写成[ 55 .. 58 ]或者[ 66 .. 68 ]则会报错 --> <#assign num01= 55 .. 58 /> <#list num01 as num> ${num} </#list> <#list 66 .. 68 as num> ${num} </#list> |
哈希表(Map)
定义哈希表
<#assign maps={"1":"张三","2":"李四"}> ${maps["1"]} |
张三 |
<#--以下代码可以将map的key转换为相应的序列--> <#assign keys=maps?keys> <#list keys as key> ${key}---${maps[key]} </#list> |
1---张三 2---李四 |
<#assign users={"username":"张三","password":"123"}> ${users.username}---${users["password"]} |
张三---123 |
注意:
FreeMarker中的哈希表要求其key必须是字符串,包括数据模型中的java.util.HashMap的key也要是字符串,否则报错
不能直接用list遍历map,需要先将map的key转换为相应的序列
人在山中,才知道,白云也可以抓上一把,苍翠竟有清甜的味道。
人在山中,才知道,高度永远是一个变量,而快乐则是附于中跋涉过程的函数。
人在山中,才知道,庄严是望远时的一种心境,高处才能指点江山。