手冊寫的不錯,忘記的時候能夠翻翻n(*≧▽≦*)nhtml
--------------------------------------------分割線--------------------------------------------spring
1 <div>${expr}</div>
爲了處理缺失變量,FreeMarker提供了兩個運算符: (用於防止對象不存在而致使的異常報錯 )數組
! : 指定缺失變量的默認值 jsp
?? : 判斷某個變量是否存在,返回boolean值函數
好比:spa
1 <#if item??> 2 <div>${item}</div> 3 </#if>
又或者:code
1 <#if (item.name)??> 2 <div>${item.name!'admin'}</div> 3 </#if>
特別提示:htm
<#if (item.name)??></#if> 與 <#if item.name??></#if>是不同的哦,前者判斷item和name是否爲空,然後者指判斷name是否爲空!對象
html :字符串中全部的特殊 HTML 字符都須要用實體引用來代替(好比 < 代替 < )
trim :去掉字符串先後的空白字符
size : 序列(seqlist)中元素的個數
string :指定格式,經常使用日期
例子:blog
1 ${item.date?string('yyyy-MM-dd HH:mm:ss')} //日期格式 2 ${item?string.number} //數字格式 3 ${item.money!?string("0.00")} 元 //金錢格式
?html 用於將字符串中可能包含的html字符,進行過濾.
obj.Map()
使用{}包住,以成對的鍵值存在;
能夠混合使用.和[""],例如item.stu['name'];
<#if condition>...
<#elseif condition2>...
<#else>...
1 <#list items as item> 2 ${item} 3 </#list>
item_index爲當前變量的索引值,從0開始
item_has_next是否存在下一個對象(來辨別當前項是不是序列的最後一項的布爾值)
手冊示例:
1 <#assign seqlist=["spring","summer","autumn","winner"]>; 2 <#list seqlist as item> 3 ${item_index + 1}.${item} <#if item_has_next>,</#if> 4 </#list>
結果是按數組順序輸出!
<#assign num=1 > (建立變量num)
<#assign num=num+1 > (替換變量num)
能夠在任何地方使用訪問
<#if item.name??></#if> (詢問變量是否存在)
${user!"Anonymous"} 或者 ${user!}(指定默認)
特別注意幾點:
FreeMarker模板語言沒有null關鍵字,因此不能判斷變量是否爲Null;
FreeMarker 不能容忍引用不存在的變量,除非明確地告訴它當變量不存在時如何處理;
不存在的變量和一個值爲null的變量,是同樣的。
\r 回車 \n 換行 \" 雙引號 \' 單引號 \t Tab \b 退格鍵 \\ 反斜槓 注意** > gt >= gte < lt <= lte
<#include "../header.html" />
插入另一個指定路徑的 FreeMarker 模板文件,輸出格式是在include標籤出現的地方插入;
區分:
<@include_page path="../header.html"/>
會開始一個獨立的 HTTP 請求處理,通常不用;
JSP寫法:
<jsp:include page="path/to/some.jsp">
--------------------------------------------分割線-------------------------------------------- 上面總結的都是我平時用到的一些指令語法等內容,其餘沒有用到的我就暫時沒有放上來,之後會繼續補充噠n(*≧▽≦*)n!