更新時間:2023-02-03 來源:黑馬程序員 瀏覽量:
在JSP開發(fā)中,為了處理某些邏輯功能,難免會在JSP頁面書寫大量的Java代碼,從而導(dǎo)致JSP頁面難以維護,可重用性較低。為此,JSP從版本1.1開始,支持用戶開發(fā)自己的標簽,即自定義標簽。
自定義標簽可以有效地將HTML代碼與Java代碼分離,從而使不懂Java編程的HTML設(shè)計人員也可以編寫出功能強大的JSP頁面。JSP規(guī)范中定義了多個用于開發(fā)自定義標簽的接口和類,它們都位于javax.servlet.jsp.tagext中,這些接口和類的繼承關(guān)系如圖9-1所示。
圖9-1 自定義標簽接口和類的繼承關(guān)系
從圖9-1中可以看出,所有的標簽處理器類都需要實現(xiàn)javax.servlet.jsp.tagext.JspTag接口,這個接口是在JSP2.0中新增的一個標識接口,它沒有任何方法,主要是作為javax.servlet.jsp.tagext.Tag和javax.servlet.jsp.tagext.SimpleTag的共同基類。在JSP2.0之前,所有的標簽類都需要實現(xiàn)Tag接口,這樣的標簽稱為傳統(tǒng)標簽。后來為了簡化標簽的開發(fā),JSP2.0規(guī)范又定義了一種新類型的標簽,稱為簡單標簽,簡單標簽的處理器類需要實現(xiàn)SimpleTag接口。關(guān)于傳統(tǒng)標簽和簡單標簽的相關(guān)知識,將在后面繼續(xù)進行講解。