FreeMarker模板文件的组成(2)

1.FreeMarker模板文件主要由如下4个部分组成: 
      1.1文本:直接输出的部分 
      1.2注释:<#-- ... -->格式部分,不会输出 
      1.3插值:即${...}或#{...}格式的部分,将使用数据模型中的部分替代输出 
      1.4FTL指令:FreeMarker指定,和HTML标记类似,名字前加#予以区分,不会输出 

2.概要介绍四部分

    最简单的模板是普通  HTML  文件(或者是其他任何文本文件—FreeMarker  本身不属于HTML)。当客户端访问页面时,FreeMarker 要发送 HTML 代码至客户端浏览器端显示。如果想要页面动起来,就要在 HTML 中放置能被 FreeMarker 所解析的特殊部分。 

    2.1 ${}FreeMarker 将会输出真实的值来替换花括号内的表达式,这样的表达式被称为interpolations 插值 .(EL表达式语法)

    2.2 FTL tags 标签(FreeMarker  模板的语言标签):FTL 标签和 HTML 标签有一点相似,但是它们是FreeMarker 的指令而且是不会直接输出出来的东西。这些标签的使用一般以符号#开头。(用户自定义的 FTL 标签使用@符号来代替#) 

    2.3 Comments 注释:FreeMarker 的注释和 HTML 的注释相似,但是它用<#---->来分隔的。任何介于这两个分隔符(包含分隔符本身)之间内容会被 FreeMarker  忽略,就不会输出出来了。 

    2.4 其他任何不是 FTL  标签,插值或注释的内容将被视为静态文本,这些东西就不会被FreeMarker 所解析,会被按照原样输出出来。 

 备注:

 directives指令:就是所指的FTL  标签。这些指令在  HTML  的标签(如<table></table>)和 HTML 元素(如 table 元素)中的关系是相同的。(如果现在你还不能区分它们,那么把“FTL 标签”和“指令”看做是同义词即可。)

3.FreeMarker模板的例子

<html><br> 
<head><br> 
<title>Welcome!</title><br> 
</head><br> 
<body><br> 
<#-- 注释部分 --><br> 
<#-- 下面使用插值 --> 
<h1>Welcome ${user} !</h1><br> 
<p>We have these animals:<br> 
<u1><br> 
<#-- 使用FTL指令 --> 
<#list animals as being><br> 
   <li>${being.name} for ${being.price} Euros<br> 
<#list><br> 
<u1><br> 
</body><br> 
</html> 
posted @ 2015-12-31 17:45  ywwzhy  阅读(255)  评论(0编辑  收藏  举报