1. 最简单的模板通常是普通的html文件(或者是其他任何文本文件; FreeMarker本身不属于html)。当客户端访问某个页面时, FreeMarker要发送html代码至客户端浏览器中去显示。如果想要页面动起来(这里指动态网页技术), 那么就要在html中放置能被FreeMarker所解析的特殊代码片段。
2. 模板(FTL编程)是由如下部分混合而成的
2.1. 文本: 文本会照着原样来输出。
2.2. 插值: 这部分的输出会被计算的值来替换。插值由${ 和 }所分隔。
2.3. FTL标签: FTL标签和html标签很相似, 但是它们却是给FreeMarker的指示, 而且不会打印在输出内容中。
2.4. 注释: 注释和html的注释也很相似, 但它们是由<#-- 和 -->来分隔的。注释会被FreeMarker直接忽略, 更不会在输出内容中显示。
3. FTL标签也被称为指令。这些指令在html的标签(比如: <table>和</table>)和html元素(比如: table元素)中的关系是相同的。
4. 我们来看一个具体的模板。其中的内容已经用颜色来标记了: 文本, 插值, FTL标签, 注释。
5. FTL是区分大小写的。list是指令的名称而List就不是。类似地${name}和${Name}或${NAME}也是不同的。
6. 请注意非常重要的一点: 插值仅仅可以在文本中使用。
7. FTL标签不可以在其他FTL标签和插值中使用。比如, 这样做是错误的: <#if <#include 'foo'>='bar'>...</#if>。
8. 注释可以放在FTL标签和插值中。