国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

用Tea簡化Web開發

2019-11-18 12:54:19
字體:
來源:轉載
供稿:網友

  在開發基于java的網站的視圖層時,JavaServer Pages 被廣泛地認為是自然而然的(或唯一的)選擇。事實上,每個建立在 Java 平臺上的站點實際上都用到了 jsp 技術。JSP技術非常有名,大多數應用程序服務器都支持它,J2EE 計劃也認可了它。為什么還要選擇其它技術呢?在這篇由兩部分組成的文章的第一部分中,向您介紹了 Tea 模板語言,還向您演示了Tea是如何能夠成為JSP技術的一種可行的替代方案。在第二部分中,您將探索如何將 Tea集成為模型-視圖-控制器(Model-View-Controller (MVC))2 體系結構(尤其是 Struts 應用程序)中的視圖。

不宜使用 JSP 技術的情形

盡管JSP技術廣受歡迎,但它卻不是唯一選擇。而且,也有一些充分的理由不使用這項技術。在 Servlets.com 上的一篇文章中,Jason Hunter 指出了 JSP 環境的七個問題(參閱參考資料)。總結起來,那些問題是:

· 將(原始 Java 代碼形式的)業務邏輯置于頁面上的誘惑很大。

· 大多數普通任務的性能需要 java 代碼。

· 簡單的任務很難,因此,非 Java 設計者無法執行這些任務。

· JSP 環境中的循環很笨拙 — 定制標記令人信服地解決了這一問題。

· 會出現無用的錯誤消息。

· JSP 編程需要 Java 編譯器。

· 生成的中間servlet浪費了空間。

注:自 Jason 最初寫這篇文章以來,JSP技術規范已經經歷了兩次修訂,上面的一些問題已經得到了部分解決。然而,JSP 技術仍然有其不足。

除了 Jason 列舉的那些問題之外,我也想補充 JSP 技術的另一個問題:

· 很輕易由于部署一個帶有錯誤的 JSP 頁面而無意中破壞網站中的某個頁面(或多個頁面)。

· 一些模板引擎已經被開發出來以替代 JSP 技術。它們包括 WebMacro、Velocity、Enhydra xmlC 以及本文的主題——Tea。

介紹 Tea

Tea 是一種簡單的模板語言,它已由 Walt Disney Internet Group(WDIG)作為開放源碼發布。Tea 是 Disney 的許多網站背后的技術選擇,這些網站包括 ESPN.com、Disney.com 和 ABCNews.com。

Tea 的目標是提供簡單安全的模板引擎以便用最少的錯誤構建高度動態的網站。這一目標是通過最少的編程構造和更簡單、更不易混淆的語言機制來實現的。Tea 留給我們的是類似于 Html 但動態性一樣高的語言。由于 Tea 的簡單性,Web 開發團隊可以聘請專業性不太強的程序員——WDIG 稱這樣的人員為技術制作者——來制作站點的表示層。

使用 Tea 構建的網站有三種主要組件

· TeaServlet

· 一個或多個 Tea 模板

· 一個或多個 Tea 應用程序

TeaServlet 是 Tea 模板編譯器和執行引擎。它對于 Tea 模板就象 Tomcat 的 Jasper 對于 JSP 頁面。TeaServlet 編譯 Tea 模板(假如必要的話),在收到請求時執行它們。

Tea 模板是JSP頁面的 Tea 等價物。然而,和 JSP 編程不一樣,Tea 模板不經過到 Java Servlet 代碼這一中間轉換。相反,Tea 編譯器直接將 Tea 模板編譯成類文件。這是一項重要的差異,它直接解決了 Jason Hunter 的 JSP 問題列表中的第六和第七個問題,間接地解決了第五個問題(隨后您將看到)。

Tea 應用程序是一種機制,通過這種機制使得業務邏輯可為 Tea 模板所用。Tea 應用程序通過 Tea 應用程序的上下文實現的 public 方法來暴露業務邏輯。這些方法可以作為可從任何 Tea 模板調用的函數獲得。Tea 模板和 Tea 應用程序之間的交互類似于 JSP 環境中 JSP 技術和 JavaBeans 之間的交互。

安裝 Tea

Tea 和 Tomcat

在為本文編寫代碼時,我使用 Jakarta Tomcat 4.0.4 作為我的 servlet 容器。這些安裝指示信息假定您正在使用 Tomcat 4.0.4 作為您的 servlet 容器,還假定 Web 應用程序名為“teademo”。您的安裝可能會有些變化,這取決于您對服務器的選擇以及 Web 應用程序名稱。

可以從網址為http://opensource.go.com 的 WDIG 網站下載 Tea,它可以以 Apache 樣式許可證獲得。除了其它內容以外,分發版中包含 TeaServlet.jar 文件,它組成了 Tea 引擎。您也可以在 WDIG 的網站上找到一個名為 Kettle 的用于 Tea 的 IDE,不過我在本文中不討論 Kettle。

下載了 TeaServlet.zip 文件之后,將其解壓縮然后把 TeaServlet.jar 文件移到 Tomcat 的webapps/teademo/WEB-INF/lib 目錄。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 陵川县| 诏安县| 青州市| 鄢陵县| 普定县| 彭山县| 临城县| 北宁市| 乌兰县| 南通市| 永福县| 朝阳市| 锦州市| 齐河县| 沅江市| 博罗县| 咸阳市| 连州市| 绵竹市| 莱西市| 集安市| 子长县| 于都县| 临沭县| 谢通门县| 墨江| 古田县| 漯河市| 崇阳县| 玉树县| 潞城市| 肇州县| 邵武市| 和林格尔县| 军事| 东丰县| 股票| 张家口市| 天气| 河津市| 渝中区|