複製鏈接
請複製以下鏈接發送給好友

JSTL

鎖定
JSTL(Java server pages standarded tag library,即JSP標準標籤庫)是由JCP(Java community Proces)所制定的標準規範,它主要提供給Java Web開發人員一個標準通用的標籤庫,並由Apache的Jakarta小組來維護。開發人員可以利用這些標籤取代JSP頁面上的Java代碼,從而提高程序的可讀性,降低程序的維護難度。
中文名
JSP標準標籤庫
外文名
JSP Standard Tag Library
簡    稱
JSTL
制定者
JCP
功    能
為JSP Web開發人員提供一個標準通用的標籤庫
所屬領域
計算機科學技術

JSTL簡介

JSTL的英文全稱是JavaServer Pages Standard Tag Library,中文全稱是JSP標準標識庫。JSTL技術標準是由JCP(lava Community Process)組織的JSR052專家組發佈,Apache組織將其列入Jakarta項目,Sun公司將JSTL的程序包加入互聯網服務開發工具包內(Web Services Developer Pack(WSDP)),作為JSP技術應用的一個標準。
JSTL標籤是基於JSP頁面的,這些標籤可以插入在JSP代碼中,本質上JSTL也是提前定義好的一組標籤,這些標籤封裝了不同的功能,在頁面上調用標籤時,就等於調用了封裝起來的功能。JSTL的目標是簡化JSP頁面的設計。對於頁面設計人員來説,使用腳本語言操作動態數據是比較困難的,而採用標籤和表達式語言則相對容易,JSTL的使用為頁面設計人員和程序開發人員的分工協作提供了便利。
JSTL標識庫的作用是減少JSP文件的Java代碼,使Java代碼與HTML代碼分離,所以JSTL標識庫符合MVC設計理念。MVC設計理念的優勢是將動作控制、數據處理、結果顯示三者分離。

JSTL產生背景

在JSP誕生之初,JSP提供了在HTML代碼中嵌入Java代碼的特性,這使得開發者可以利用Java語言的優勢來完成許多複雜的業務邏輯。但是,隨後開發者發現在HTML代碼中嵌入過多的Java代碼,程序員對於動輒上千行的JSP代碼基本喪失了維護能力,非常不利於JSP的維護和擴展。基於上述的這個問題,開發者嘗試着使用一種新的技術來解決上面這些問題。因此,從JSP1.1規範後,JSP增加了自定義標籤庫的支持,提供了Java腳本的複用性,提高了開發者的開發效率。
JSTL是SUN公司發佈的一個針對JSP開發的新組件。JSTL允許用户使用標籤(Tags)來進行JSP頁面開發,而不是使用傳統的JSP腳本代碼方式開發。JSTL幾乎能夠做到傳統JSP腳本代碼能做的任何事情 [1] 

JSTL主要組成

JSTL包含了和以下操作相關的標籤:
1、核心標籤:核心標籤庫是整個JSTL中最常用的部分,主要由以下幾部分組成:基本輸入輸出、流程控制、迭代操作和URL操作。負責Web應用的常見工作,如:循環、表達式賦值、基本輸入輸出等。
2、I18N格式標籤庫:用來格式化顯示數據的工作如:對不同區域的日期格式化等。
3、XML標籤庫:用來訪問XML文件的工作,支持JSP對XML文檔的處理。
4、數據庫標籤庫:SQL標籤庫包括了大部分訪問數據庫的邏輯操作,包括查詢、更新、事務處理、設置數據源等。可以做訪問數據庫的工作。
5、函數標籤庫:用來讀取已經定義的某個函數。 [2] 

JSTL優點

JSTL的優點如下:
1、簡化了JSP和Web應用程序的開發。
2、在應用程序服務器之間提供了一致的接口,最大限度地提高了·Web應用在各應用服務器之間的移植。
3、允許JSP設計工具與Web應用程序開發的進一步集成。相信不久就會有支持JSTL的IDE開發工具出現。
4、以一種統一的方式減少了JSP中的Scriptlets代碼數量,可以達到程序中沒有任何Scriptlest代碼。
JSTL封裝了JSP開發中的常用功能。比如説,在沒有JSTL時,通過Scriptlets來迭代輸出某個List(Set),有了JSTL,就可以使用它的一系列的Tag進行迭代輸出。由於JSTL是JSP2.0規範的一部分,所以最新的Web容器都會支持它 [3] 

JSTL使用條件

在JSP中使用JSTL標籤需要具備如下兩個條件。
條件一:要在JSP頁面中使用JSTL標籤,需使用taglib指令引用標籤庫
條件二:要在JSP中使用JSTL標籤,還需要下載安裝JSTL實現(Implementation)。
JSTL1.2實現的下載地址為:https:jstl.dev.java.net,下載文件為jstl-impl-1.2.jar,將該文件複製到Web應用程序的WEB-INFlib文件夾中即可使用JSTL。
JSTL1.0實現的下載地址為:http://www.apache.org/dist/jakarta/taglibs/standard/,Windows用户下載jakarta-taglibs-standard-current.zip。下載後解壓,在lib文件夾中有兩個文件:
·jstl.jar;
·standard.jar.
將這兩個文件複製到Web應用程序的WEB-INFlib文件夾中即可使用JSTL [4] 
參考資料
  • 1.    黎才茂編著.Java Web開發技術與項目實戰[M].合肥:中國科學技術大學出版社,2016.08
  • 2.    莫兵,蒙煥念,黃良永主編.JSP程序設計教程[M].北京:兵器工業出版社,2015.08
  • 3.    沙基昌主編.軟件開發中級編程指南 3 Java Web應用開發[M].長沙:國防科技大學出版社,2008.09
  • 4.    夏幫貴編著.Java Web開發完全掌握[M].北京:中國鐵道出版社,2011.07