此处的${username!} 如何username 是null 或者不存在使用!可以阻止异常抛出
此处的${item.birthday?string('yyyy-MM-dd')} 把生日 date 格式化输出
转义${var?string('yes','no')}
如何转义html内容 ${var?html} 把富文本当成文本输出
1.${date}此处的date如果是sql.date这样取值没问题如何使util.date会报错
因为freemarker是和数据库匹配的
util.date需要转义 ${date?string(' yyyy-MM-dd HH:mm:ss')}
2.对null处理 或者根本不存在的变量 都可以采取如何措施
${nullVar!'我是默认值'} 如果是null输出我是默认值
date存在进行转义不存在不转义
${date!?string(' yyyy-MM-dd HH:mm:ss')}
3.变量的定义赋值、运算
4.封装的对象进行取值 比如user对象
5.集合list的遍历
6.集合map的遍历 通过key 键 来获取值
7.if语法
7.1if语法
7.2if else语法
7.3 if elseif else语法 > 转义 大于号 >
7.4 if 判 null
<#if mylist??> 等价于<#if mylist?exists> 判断 mylist是否存在
<#list mylist as item>
${item}
<#list>
<#if>
7.5 if多条件 ||,&&,!
8.switch
9.string的基本操作指令
<#assign a = 'hello'/>
<#assign b = 'world'/>
10.自定义函数 对整数数组进行排序
11.list排序內建函数及其指令
11.1正序
输出结果
11.2反转
输出结果
11.3list的长度
11.4list 下标取值
12.自定义指令
自定义指令使用@
12.1页面
输出结果
12.2配置文件进行配置 在freemarker的config中配置 其中roleDirectiveModel是bean 次数是指向的注解 加载进来的
12.3control层
13.內建函数
13.1 split
13.2字符串转日期
13.3数字类型內建函数
13.4 list內建函数
13.5其他內建函数
eval 变成整数
14.macro、function
14.1macro
无参数
有参数
有默认值的
多个传参数的
14.2nested
输出结果
代码
14.3函数
输出结果
代码