Apache FreeMarkerJava 模板引擎
Apache FreeMarker 是一個(gè)模板引擎:一個(gè)基于模板和變化數(shù)據(jù)生成文本輸出(HTML網(wǎng)頁、電子郵件、配置文件、源代碼等)的Java庫。模板是用FreeMarker模板語言(FTL)編寫的,它是一種簡單的、專門的語言(不是像PHP那樣的全面的編程語言)。通常,一個(gè)通用的編程語言(如Java)被用來準(zhǔn)備數(shù)據(jù)(發(fā)出數(shù)據(jù)庫查詢,進(jìn)行商業(yè)計(jì)算)。然后,Apache FreeMarker使用模板顯示這些準(zhǔn)備好的數(shù)據(jù)。在模板中,你關(guān)注的是如何呈現(xiàn)數(shù)據(jù),而在模板外,你關(guān)注的是要呈現(xiàn)什么數(shù)據(jù)。
這種方法通常被稱為MVC(模型-視圖-控制器)模式,在動(dòng)態(tài)網(wǎng)頁中特別流行。它有助于將網(wǎng)頁設(shè)計(jì)者(HTML作者)和開發(fā)者(通常是Java程序員)分開。設(shè)計(jì)師不會(huì)面對(duì)模板中復(fù)雜的邏輯,可以改變頁面的外觀而不需要程序員改變或重新編譯代碼。
雖然FreeMarker最初是為在MVC網(wǎng)絡(luò)應(yīng)用程序框架中生成HTML頁面而創(chuàng)建的,但它并不拘泥于servlets或HTML或任何與網(wǎng)絡(luò)有關(guān)的東西。它也可用于非網(wǎng)絡(luò)應(yīng)用環(huán)境。
特性:
- 強(qiáng)大的模板語言:條件塊、迭代、賦值、字符串和算術(shù)運(yùn)算和格式化、宏和函數(shù)、包括其他模板、默認(rèn)轉(zhuǎn)義(可選),以及更多。
- 多用途和輕量級(jí):零依賴性,任何輸出格式,可以從任何地方加載模板(可插拔),許多配置選項(xiàng)
- 國際化/本地化意識(shí):對(duì)地域敏感的數(shù)字和日期/時(shí)間格式,本地化的模板變化。
- XML處理能力:將XML DOM-s放入數(shù)據(jù)模型中并遍歷它們,甚至可以聲明性地處理它們。
- 多功能的數(shù)據(jù)模型:Java對(duì)象通過可插拔的適配器以變量樹的形式暴露給模板,這決定了模板如何看待它們。
評(píng)論
圖片
表情
