文章目录
  1. 1. 1.FreeMarker是什么?
  2. 2. 2.FreeMarker的取值(插值)

1.FreeMarker是什么?

数据模型+模板输出=HTML(输出)

模板方便了从数据模型中取数据并且展示出来的过程。

2.FreeMarker的取值(插值)

数据分为基本数据类型(Integer等),封装的对象类型(User类等)与集合类型(List、Map等)。

  • 常用的取值方法:

    1
    * 对null、不存在对象的取值:```${val!'我是默认值'}

  • 取包装对象的值:使用点语法,如

    1
    * Date类型格式:```${date?String('yyyy-MM-dd')}

  • 转义HTML内容:

    1
    2
    3
    注:
    1.boolean型一般转为yes/no: ```${val?string('yes','no')}

或者在配置文件中声明

key="boolean_format">’true,false```
1
2
3
4
2.取包装对象值时,用括号括起来加上!避免空值报错
## 3.FreeMarker集合遍历
List遍历:

<#list mylist as item>
${item}

</#list>

1
Map遍历:

<#list mymap?keys as key>
${key}:${mymap[key]}

</#list>

1
2
3
## 4.FreeMarker逻辑判断
判断是否存在:```<#if mylist??>``` 或将第二个?改成exists
条件分支:```<#elseif>

多条件时:与java语法相同
switch语法:

1
2
3
4
5
6
7
<#switch var>
<case 10>
10</br>
<#break>
<#default>
other</br>
</#switch>

文章目录
  1. 1. 1.FreeMarker是什么?
  2. 2. 2.FreeMarker的取值(插值)