Freemarker定义: 一款模板引擎
Freemarker是一个web图层组件不是web框架,解析服务端数据到页面
小例子:
<#list 集合 as item> list标签对集合进行遍历 <li>${item.name}</li> <li>item.birthday?string('yyyy-MM-dd')}</li> 日期格式化,"?string"表示调用方法格式化时间
java中常用的数据模型:
取值指令:
对于boolean类型的变量,在页面中显示的是yes,因为显示true会让页面报错。这需要在配置文件中进行转换配置。
Freemarker支持的是java.sql.Date,可以直接输出,如果使用java.util.Date会报错,
可以这样处理:1 使用java.sql.Date转换 2 在模板中使用?string('yyyy-MM-dd')进行转换
${var!默认值} 默认值只在null或变量不存在时输出
定义一个变量: <#assign var=value>
${var?html} 对var变量值里的html标签进行转义,并输出富文本 富文本指html标签和文
!判断最近变量是否存在。不存在就不输出。可以避免错误信息 例如取自定义变量的值:${user.name!}这样只能判断name是否存在,如果user也不存在的话就会报错,
但我们可以用()把user.name包起来,${(user.name)!}
对集合进行遍历:
对Map进行遍历:
if语法:
对myList判断是否为空,如果空的话就不走if内部的这段代码了。下面两个效果一样。
switch语法:
string 基本操作指令:
自定义指令: 自定义指令用@,内建指令用#,user 和role是入参,键值对的形式,不用,隔开。result1和result2是出参,用,隔开。
还要在配置文件里进行配置:
第三步:实现接口
freemarker常用内建函数: