什么是自定義標(biāo)簽具體的分類
什么是自定義標(biāo)簽具體的分類
自定義標(biāo)簽是可重用的組件代碼,并且允許開發(fā)人員為復(fù)雜的操作提供邏輯名稱。那么你對(duì)自定義標(biāo)簽了解多少呢?以下是由學(xué)習(xí)啦小編整理關(guān)于什么是自定義標(biāo)簽的內(nèi)容,希望大家喜歡!
自定義標(biāo)簽的概念
一般我們說(shuō)自定義標(biāo)簽是指JSP自定義標(biāo)簽。自定義標(biāo)簽在功能上邏輯上與javaBean 類似,都封裝Java 代碼?! SP開發(fā)人員使用標(biāo)簽庫(kù)創(chuàng)建標(biāo)簽.標(biāo)簽庫(kù)是按照功能或?qū)崿F(xiàn)進(jìn)行分組的自定義標(biāo)簽的集合。
網(wǎng)絡(luò)上常見(jiàn)的CMS內(nèi)容管理系統(tǒng)都是采用模板的形式來(lái)實(shí)現(xiàn),基本上所有的CMS系統(tǒng)都有一套自己的模板標(biāo)簽書寫方法,簡(jiǎn)稱自定義標(biāo)簽。
1.標(biāo)簽(Tag):
標(biāo)簽是一種XML元素,通過(guò)標(biāo)簽可以使JSP網(wǎng)頁(yè)變得簡(jiǎn)潔并且易于維護(hù),還可以方便地實(shí)現(xiàn)同一個(gè)JSP文件支持多種語(yǔ)言版本。由于標(biāo)簽是XML元素,所以它的名稱和屬性都是大小寫敏感的
2.標(biāo)簽庫(kù)(Tag library):
由一系列功能相似、邏輯上互相聯(lián)系的標(biāo)簽構(gòu)成的集合稱為標(biāo)簽庫(kù)。
3.標(biāo)簽庫(kù)描述文件(Tag Library Descriptor):
標(biāo)簽庫(kù)描述文件是一個(gè)XML文件,這個(gè)文件提供了標(biāo)簽庫(kù)中類和JSP中對(duì)標(biāo)簽引用的映射關(guān)系。它是一個(gè)配置文件,和web.xml是類似的。
4.標(biāo)簽處理類(Tag Handle Class):
標(biāo)簽處理類是一個(gè)Java類,這個(gè)類繼承了TagSupport或者擴(kuò)展了SimpleTag接口,通過(guò)這個(gè)類可以實(shí)現(xiàn)自定義JSP標(biāo)簽的具體功能
自定義標(biāo)簽的分類
自定義JSP標(biāo)簽
1. <% @ taglib prefix=”someprefix” uri=”/sometaglib” %>
為了使到JSP容器能夠使用標(biāo)簽庫(kù)中的自定義行為,必須滿足以下兩個(gè)條件:
1)從一個(gè)指定的標(biāo)簽庫(kù)中識(shí)別出代表這種自定義行為的標(biāo)簽
2)找到實(shí)現(xiàn)這些自定義行為的具體類
第一個(gè)必需條件-找出一個(gè)自定義行為屬于那個(gè)標(biāo)簽庫(kù)-是由標(biāo)簽指令的前綴(Taglib Directive's Prefix)屬性完成,所以在同一個(gè)頁(yè)面中使用相同前綴的元素都屬于這個(gè)標(biāo)簽庫(kù)。每個(gè)標(biāo)簽庫(kù)都定義了一個(gè)默認(rèn)的前綴,用在標(biāo)簽庫(kù)的文檔中或者頁(yè)面中插入自定義標(biāo)簽。所以,你可以使用除了諸如jsp,jspx,java,servlet,sun,sunw(它們都是在JSP白皮書中指定的保留字)之類的前綴。
uri屬性滿足了以上的第二個(gè)要求。為每個(gè)自定義行為找到對(duì)應(yīng)的類。這個(gè)uri包含了一個(gè)字符串,容器用它來(lái)定位TLD文件。在TLD文件中可以找到標(biāo)簽庫(kù)中所有標(biāo)簽處理類的名稱
2. 當(dāng)web應(yīng)用程序啟動(dòng)時(shí),容器從WEB-INF文件夾的目錄結(jié)構(gòu)的META-INF搜索所有以.tld結(jié)尾的文件。也就是說(shuō)它們會(huì)定位所有的TLD文件。對(duì)于每個(gè)TLD文件,容器會(huì)先獲取標(biāo)簽庫(kù)的URI,然后為每個(gè)TLD文件和對(duì)應(yīng)的URI創(chuàng)建映射關(guān)系。
在JSP頁(yè)面中,我們僅需通過(guò)使用帶有URI屬性值的標(biāo)簽庫(kù)指令來(lái)和具體的標(biāo)簽庫(kù)匹配。
CMS自定義標(biāo)簽
CMS的自定義標(biāo)簽格式大同小異,以動(dòng)易CMS為例,標(biāo)簽寫法如下:
{$Skin_CSS}
{$MenuJS}
{$ShowLogo(180,60)}
看過(guò)“自定義標(biāo)簽的分類”的人還看了:
1.excel2013怎么自定義Metro標(biāo)簽菜單
2.怎么在CorelDRAW X7中使用版面樣式和標(biāo)簽樣式