JSP標(biāo)簽庫介紹 (1)轉(zhuǎn)
發(fā)表時(shí)間:2023-08-02 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]作者: Casey Kochmer / 翻譯:廖錚 日期: 2001年02月27日 <!—還不太了解Java Servlet Page的強(qiáng)大功能?那好,不妨跟我一道看看JSP最令人矚目的強(qiáng)大工...
作者: Casey Kochmer / 翻譯:廖錚
日期: 2001年02月27日
<!—還不太了解Java Servlet Page的強(qiáng)大功能?那好,不妨跟我一道看看JSP最令人矚目的強(qiáng)大工具之一:JSP標(biāo)簽庫。-->
筆者使用JSP和ASP從事編程工作也有很長一段時(shí)間了,我越來越覺得,在這兩種服務(wù)器端編程解決方案中,JSP的功能要比ASP強(qiáng)大得多。我為什么要把JSP選作自己主要的服務(wù)器端應(yīng)用程序編寫工具呢?當(dāng)然,JSP迷人的特性和功能不少,但標(biāo)簽庫是讓我做出這一決定的最重要誘因之一。
為什么這樣說呢?原因有兩個(gè):維護(hù)和開發(fā)速度。服務(wù)器端腳本語言其實(shí)就像是開發(fā)Internet的熔爐。在一個(gè)服務(wù)器頁面上,你可以很方便地混合各種不同的腳本方法和對象。這種頁面簡直就是建筑Web的混凝土。正是這種“材料”的混合給予了服務(wù)器端腳本強(qiáng)大的信息處理能力。它可以讓服務(wù)器端程序設(shè)計(jì)人員開發(fā)出動態(tài)的、靈活的Web頁面。但是,另一方面,腳本的自由混合卻很難得到維護(hù),特別是隨著項(xiàng)目規(guī)模的不斷增長而顯得尤其嚴(yán)重。我們將不得不讓有經(jīng)驗(yàn)的程序員來建立和維護(hù)最終產(chǎn)品,結(jié)果讓這些程序員成為了一般的Web設(shè)計(jì)人員。服務(wù)器端應(yīng)用程序在最終的圖形設(shè)計(jì)和實(shí)現(xiàn)這兩方面上就弱化了。更糟糕的是,因?yàn)檫@些頁面對代碼而言變得很復(fù)雜,開發(fā)速度也就相應(yīng)降低了。最后,許多中等規(guī)模或者大型的服務(wù)器端Web應(yīng)用程序很晚才得以推出而且成本也無法控制。此外,在實(shí)現(xiàn)了這些應(yīng)用程序之后,許多銷售商還必須去尋找合格的程序員來維護(hù)這種亂得如同一盆意大利面條似的代碼。
我們誰都不愿意看到這樣的結(jié)果,所以,為了克服這個(gè)問題,ASP引進(jìn)了COM對象技術(shù),而JSP則提供了J2EE作為對策。這些解決方案都是建立在集中的、可重用代碼庫的機(jī)制之上。但是,他們使用起來可就太難了,耗費(fèi)的時(shí)間也很多。還有,這些解決方案并沒有減少建立混亂代碼的誘惑,結(jié)果,我們只能組織起大型的、內(nèi)部結(jié)構(gòu)良好的開發(fā)團(tuán)隊(duì)來使用這些技術(shù)。這就意味著,盡管我們目前都已經(jīng)有了建立大型項(xiàng)目的以上方法,中等規(guī)模的項(xiàng)目卻沒有被這些技術(shù)所光顧。
可現(xiàn)實(shí)是,中等規(guī)模的項(xiàng)目才是Web應(yīng)用程序中的主體部分。所以,許多項(xiàng)目不得不面對其開發(fā)和維護(hù)環(huán)境不能滿足其需要的局面。
幸好,JSP為我們提供了解決這一問題的最佳方案,標(biāo)簽庫(Tag libraries)提供了建立可重用代碼塊的簡單方式。但是和COM和J2EE不同的是,你不需要掌握任何額外的技能就可以建立標(biāo)簽庫:如果你會編寫JSP頁面,你就會建立標(biāo)簽庫。最后,標(biāo)簽庫還改進(jìn)了Web應(yīng)用程序的維護(hù)性。這種對維護(hù)性的改進(jìn)表現(xiàn)在:輕易地在JSP頁面上就實(shí)現(xiàn)了基于XML的可定制接口。結(jié)果可想而知,Web設(shè)計(jì)人員可以建立JSP Web應(yīng)用程序而無需知道JSP是怎么回事。這樣一來,Web開發(fā)就成為一項(xiàng)非常富有效率的團(tuán)隊(duì)開發(fā)任務(wù)了。JSP程序員可以建立定制的標(biāo)簽和后端代碼模塊,而Web設(shè)計(jì)人員則可以使用定制標(biāo)簽并且全力關(guān)注于Web設(shè)計(jì)本身。標(biāo)簽庫解決了代碼混亂的問題,而且做得干凈漂亮(事實(shí)上,XML才是解決這些問題的本質(zhì)所在,但是標(biāo)簽庫還是起到了相當(dāng)關(guān)鍵的作用)。