velocity模闆其實就是java不分文法的翻譯,用到的屬性還是java的方法,get,set,等
<a></a>
<a target="_blank"></a>
使用substring(begin,end)要注意,結束位置為:end索引-1
velocity 中的數組對應 Java 中的 List 對象。對于 Java 原生 Array 對象, 隻能夠 #foreach 進行周遊,無法使用 arr[0]和arr[0]和arr.get(0) 方法。
--事實上,list很友善,但list比數組效率低很多倍
$myarray.isEmpty()list是否為空
$myarray.size()擷取list元素個數
$myarray.get(2)擷取list指定下标的元素
$myarray.add()增加元素
在foreach中velocityCount表示循環的次數,從1開始,代表第一個循環。
在velocity中,非null被認為是真的,是以,判斷null可以用
或者既可以判斷null也可以判斷空字元串
最開始的時候經常#if就完了報錯,後來都是寫完if就end,最後寫中間。
原來感覺不懂不敢碰,自從寫了個velocity分頁後就忽然覺得宏不要太好用。事情是這樣的,當時地區三級關聯需要多處調用,提取出成公共子產品,用#parse導入後出現沖突,因為一個頁面用兩次地區關聯代碼,id就重複了。于是想把id給變成參數,當我需要這個公用代碼的時候,把id當參數傳進去,最後render的結果就是html代碼的id為我的參數。這樣看來,宏就是一個函數。
想要用宏,先寫好,然後parse,然後調用。
一個簡單的宏函數:
使用它:如果在本頁面,直接#d,如果是單獨寫了一個模闆檔案,那麼需要先#parse(檔案路徑),再#d,如同js外部引用。
傳參數的宏:
我開始經常用#include,後來發現重新整理頁面沒變化,用#parse就好了。字面了解,一個是直接拿過來,一個是解析後。是以,如果是傳html代碼,可以直接include;若是包含velocity代碼的要編譯#parse.
本文轉自Ryan.Miao部落格園部落格,原文連結:http://www.cnblogs.com/woshimrf/p/5169388.html,如需轉載請自行聯系原作者