参考自:http://freemarker.foofun.cn/
http://www.imooc.com/learn/801
FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具。
模板编写的语言为FreeMarker Template Language (FTL)。它是简单的,专用的语言, 不是 像PHP那样成熟的编程语言。
模板(FTL编程)是由如下部分混合而成的:
- 文本:文本会照着原样来输出。
- 插值:这部分的输出会被计算的值来替换。插值由 ${ and } 所分隔(或者 #{ and },这种风格已经不建议再使用了;点击查看更多)。
- FTL 标签:FTL标签和HTML标签很相似,但是它们却是给FreeMarker的指示, 而且不会打印在输出内容中。
- 注释:注释和HTML的注释也很相似,但它们是由 <#– 和 –>来分隔的。注释会被FreeMarker直接忽略, 更不会在输出内容中显示。
基本操作
- 基本类型
<div class="demo-dev">
<ul>
<!-- 变量赋值 -->
<#assign a = 100/>
<!-- 取值 -->
a = <font color="red">${a}</font>
<!-- 运算-->
a + 100 = <font color="red">${a + 100}</font>
</ul>
</div>
- 封装类型
<!-- 取值 -->
name:<font color="red">${user.name}</font>
<!-- 防止当user对象,name属性为空或不存在时报错-->
name:<font color="red">${user.name!}</font>
<!-- 防止user不存在时报错 -->
#"游客":为空时设置默认值
name:<font color="red">${(user.name)!"游客"}</font>
集合
- List,Set:
<#list myList as item> <font color="red">${item!}</font><br/> </#list>
- Map