jetbrick-template 剛剛釋出了 1.0.2 版。
jetbrick-template 是一個新一代 Java 模闆引擎,具有高性能和高擴充性。
适合于動态 HTML 頁面輸出或者代碼生成,可替代 JSP 頁面或者 Velocity
等模闆。 指令和 Velocity 相似,表達式和 Java 保持一緻,易學易用。
主要特性
- 支援類似與 Velocity 的多種指令
- 支援靜态編譯
- 支援編譯緩存
- 支援熱加載
- 支援類型推導
- 支援泛型
- 支援可變參數方法調用
- 支援方法重載
- 支援類似于 Groovy 的方法擴充
- 支援函數擴充
簡單易用的指令
jetbrick-template 指令集和老牌的模闆引擎 Velocity 非常相似,易學易用。
詳細指令文法,請參考:
文法指南。或者
和 Velocity 的比較。
卓越性能
jetbrick-template 将模闆編譯成 Java ByteCode
運作,并采用強類型推導,無需反射和減少類型轉換。渲染速度等價于 Java
寫死。比 Velocity 等模闆快一個數量級。 比 JSP 也快,因為 JSP 隻有
Scriptlet 是編譯的,Tag 和 EL 都是解釋執行的。 而 jetbrick-template
是全編譯的。
在 Stream 模式中(Webapp 采用 OutputStream 将文本輸出到浏覽器),由于 Java
寫死輸出字元串需要進行一次編碼的轉換。 而 jetbrick-template
卻在第一次運作期間就緩存了編碼轉換結果,使得 jetbrick-template
的性能甚至優于 Java 寫死。
具體測試用例,請參考:
Template Engine Benchmark Test(platform: Window 7 x64, Intel i5,
16GB RAM, JDK 1.6.0_41 x64)
易于內建
可以和市面上常見的 Web MVC framework 進行內建。
具體內建方法,請參考:
架構內建友好的錯誤提示
具有詳細的模闆解析和編譯錯誤提示,出錯提示可以定位到原始模闆所在的行号。