麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

用Tea簡(jiǎn)化Web開發(fā)

2019-11-18 12:54:19
字體:
供稿:網(wǎng)友

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

不宜使用 JSP 技術(shù)的情形

盡管JSP技術(shù)廣受歡迎,但它卻不是唯一選擇。而且,也有一些充分的理由不使用這項(xiàng)技術(shù)。在 Servlets.com 上的一篇文章中,Jason Hunter 指出了 JSP 環(huán)境的七個(gè)問題(參閱參考資料)??偨Y(jié)起來,那些問題是:

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

· 大多數(shù)普通任務(wù)的性能需要 java 代碼。

· 簡(jiǎn)單的任務(wù)很難,因此,非 Java 設(shè)計(jì)者無法執(zhí)行這些任務(wù)。

· JSP 環(huán)境中的循環(huán)很笨拙 — 定制標(biāo)記令人信服地解決了這一問題。

· 會(huì)出現(xiàn)無用的錯(cuò)誤消息。

· JSP 編程需要 Java 編譯器。

· 生成的中間servlet浪費(fèi)了空間。

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

除了 Jason 列舉的那些問題之外,我也想補(bǔ)充 JSP 技術(shù)的另一個(gè)問題:

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

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

介紹 Tea

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

Tea 的目標(biāo)是提供簡(jiǎn)單安全的模板引擎以便用最少的錯(cuò)誤構(gòu)建高度動(dòng)態(tài)的網(wǎng)站。這一目標(biāo)是通過最少的編程構(gòu)造和更簡(jiǎn)單、更不易混淆的語(yǔ)言機(jī)制來實(shí)現(xiàn)的。Tea 留給我們的是類似于 Html 但動(dòng)態(tài)性一樣高的語(yǔ)言。由于 Tea 的簡(jiǎn)單性,Web 開發(fā)團(tuán)隊(duì)可以聘請(qǐng)專業(yè)性不太強(qiáng)的程序員——WDIG 稱這樣的人員為技術(shù)制作者——來制作站點(diǎn)的表示層。

使用 Tea 構(gòu)建的網(wǎng)站有三種主要組件

· TeaServlet

· 一個(gè)或多個(gè) Tea 模板

· 一個(gè)或多個(gè) Tea 應(yīng)用程序

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

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

Tea 應(yīng)用程序是一種機(jī)制,通過這種機(jī)制使得業(yè)務(wù)邏輯可為 Tea 模板所用。Tea 應(yīng)用程序通過 Tea 應(yīng)用程序的上下文實(shí)現(xiàn)的 public 方法來暴露業(yè)務(wù)邏輯。這些方法可以作為可從任何 Tea 模板調(diào)用的函數(shù)獲得。Tea 模板和 Tea 應(yīng)用程序之間的交互類似于 JSP 環(huán)境中 JSP 技術(shù)和 JavaBeans 之間的交互。

安裝 Tea

Tea 和 Tomcat

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

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

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



發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 国产色视频免费 | 国内精品伊人久久 | 在线中文字幕观看 | 国产亚洲精品久久久久久久 | 香蕉国产片| 99国产精品欲a | 一级毛片在线免费播放 | 免费中文视频 | 337p日本欧洲亚洲大胆精蜜臀 | 欧美自拍 | 免费欧美一级视频 | 精品一区二区三区在线观看视频 | 视频一区国产 | 黄污污网站 | 国产精品成人久久久久a级 av电影在线免费 | 欧美18一12sex性处hd | 成人一级片毛片 | 午夜精品毛片 | 亚洲精品一区二区三区大胸 | 中文字幕爱爱视频 | 久久人人做| 爽爽淫人综合网网站 | 99精品国产小情侣高潮露脸在线 | 亚洲一区二区三区高清 | 毛片韩国 | 亚洲人成网站在e线播放 | 国产无遮挡一区二区三区毛片日本 | 国产精品久久久久久影视 | 免费黄色在线观看网站 | 欧美性生活久久 | 黄网站色成年大片免费高 | 国产成人网 | 亚州成人在线观看 | 久久久久久久久久91 | 成人毛片网站 | 国产亚洲精品久久久久5区 男人天堂免费 | 九九热免费视频在线观看 | 在线a| www.91成人| 日本在线观看一区二区 | 精品国产91久久久久 |