天天看點

【Java模闆語言】TinyTemplate 實戰 <一>:Serlvet內建一、什麼是TinyTemplate二、與Servlet內建,運作Hello,World三、小結

什麼是模闆語言?

模闆語言是為了使使用者界面與業務資料(内容)分離而産生的,并能生成特定格式的文檔。

tiny模闆引擎是一個基于java技術建構的模闆引擎,它具有體量小、性能高和擴充易的特點。 适合于所有通過文本模闆生成文本類型内容的場景,如:xml、源檔案、html等等,可以說,它的出現就是為了替換velocity模闆引擎而來,是以在指令集上在盡量與velocity接近的同時,又擴充了一些velocity不能很好解決問題的指令與功能,在表達多方面則盡量與java保持一緻,是以非常地易學易用。

1. 體量小表現在總共不到5000多行的代碼,去掉解析器近1000行,核心引擎隻有4000多行代碼。 2. 性能高表現在與現在國内幾款高性能模闆引擎如:jetbrick、webit等引擎的性能相比,近乎伯仲之間,但是比velocity、freemarker等則有長足的進步,效率大緻是velocity四倍。 3. 擴充性表現在tiny架構引擎的所有環境都可以自行擴充,并與原有體系進行良好統一。 4. 易學習表現在tiny架構概念清晰、子產品劃分科學、具有非常高的高内聚及低耦合。 5. 使用方式靈活表現在,可以多例方式、單例方式,并可以與spring等有良好內建。 6. 友好的錯誤提示資訊。

簡要特點介紹:

1. 類似于 velocity 的指令方式,相同或相似指令達90%左右 2. 支援可變參數方法調用 3. 支援類成員方法重載 4. 支援函數擴充 5. 采用弱類型方式,對于模闆層的代碼編寫限制更小,模型層怎樣變化,模闆層的代碼調整都非常容易 6. 支援宏定義#macro 7. 支援布局#layout

1. 建立一個quickstart.servlettemplate maven項目

在eclipse中,new — maven project — “maven-archetype-quickstart“ …

在pom.xml添加對tinytemplate的依賴:

如上代碼,重寫tinyservlet的handlerequest方法即可,然後在裡面進行邏輯處理,return傳回index.page。

4. 添加default.layout和index.page

default.layout:

index.page:

5. 運作項目,右鍵項目 run as — maven build — “jetty:run”。通路 localhost:8080/項目名/index

【Java模闆語言】TinyTemplate 實戰 <一>:Serlvet內建一、什麼是TinyTemplate二、與Servlet內建,運作Hello,World三、小結

1、tinytemplate的簡介與特點

2、tinytemplate與servlet的配置(下一講與springmvc的配置)

3、tinytemplate最簡單的也是最常用的取值文法${}