当客户端访问某个页面时,FreeMaker就发送HTML代码到客户端浏览器中显示。
数据模型:目录角色:称为哈希表hashes,哈希表存储的其他变量称为子变量,可以通过名称查找,
存储单值得变量称为标量:在模板中使用子变量应该从根路径root指定它的路径,用.分割
序列(Sequence):像hash表那样存储子变量,但是子变量没有名字,只是列表中的项使用【下标】(下标从0开始)。
标量类型:
1.字符串:文本,任意的字符序列
2.数字:数值类型,字符串:“50”和数字50是两种完全不同的东西,前者是两个字符的序列,后者是在数学运算中直接被使用的数值。
3.日期、时间:存储某一天的时间(日期-时间),或者是日期或者是时间
4.布尔值:对应着对或错
总结:1.数据模型可以被看做树形结构
2.标量用于存储单一的值,字符串,数字,日期、时间或者是布尔值
3.哈希表是一种存储变量及其相关且有唯一标示的容器
4.序列是存储有序变量的容器,存储的变量可以通过数字索引来检索,索引经常从0开始
内建函数:用?代替.访问,区别子变量
不存在的变量:决不能容忍,除非明确告知它当变量不存在时如何处理。
不存在的变量和值为null的变量对于freemarker是一样的,所以这里的丢失包含这两种情况。
1.文本:直接输出
2.注释:<#– –>
3.插值:${ },#{ }使用数据模型中的数据代替
4.FTL(FreeMarker Template Language)指令:FreeMarker指定,名字前加上#区分,不会输出
插值仅仅可以在文本中使用,FTL指令不能在其他FTL指令和插值中使用,注释可以放在FTL指令和插值中,FreeMarker的“空格剥离”,自动删除多余的空格
指令规则:使用指令时#也可变成@,如果该指令是一个用户指令而不是系统内建指令时将#改为@,使用FTL标签时,应该有正确的嵌套,使用不存在的指令,FreeMarker不会使用用模板输出,而会产生错误消息,FreeMarker会忽略FTL标签的空白字符,< ,/>和指令之间不允许有空白字符。
1.开始标签<#指令名 参数名 >
2.结束标签
FreeMarker
最新推荐文章于 2022-08-18 14:00:00 发布