乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      JSP自定義標(biāo)簽開發(fā)+TLD文件元素詳解

       ha_rdly 2016-10-28

       

      自定義標(biāo)簽開發(fā)整理

      從jsp1.1開始就可以在jsp頁面中使用自定義標(biāo)簽了,使用自定義標(biāo)簽不但可以實(shí)現(xiàn)代碼重用,而且可以使jsp代碼更簡潔。Jsp2.0的標(biāo)簽擴(kuò)展API中又增加了SimpleTag接口和其實(shí)現(xiàn)類SimpleTagSupport。

      標(biāo)簽擴(kuò)展API層次結(jié)構(gòu):

        

      TLD文件元素詳解:

      每個自定義標(biāo)簽都必須在TLD文件中聲明,TLD文件只不過是一個XML文件。根元素是<taglib>,它包含一個或者多個<tag>標(biāo)簽,該元素用來聲明定制標(biāo)簽。<taglib>元素中只有<tlib-version>元素是必須的,其他都是可選的。

      TLD文件中的元素

      標(biāo)  簽

      含  義

      <taglib>

      TLD文件的根元素

      <tlib-version> 

      此標(biāo)簽庫的版本

      <jsp-version>

      此標(biāo)簽庫依賴的JSP版本。

      <short-name>

       

      <description>

      <display-name>

      <icon>

      <uri>

      <validator>

      <listener>

      <function>

      當(dāng)在JSP中使用標(biāo)簽時,此標(biāo)簽庫首選或者建議的前綴。當(dāng)然可以完全忽略這個建議

      描述信息

      圖形工具可顯示的一個簡短名稱

      圖形工具可顯示的圖標(biāo)

      指定使用該標(biāo)簽庫中標(biāo)簽的URI

      關(guān)于該庫的TagLibraryValidator信息

      指定事件監(jiān)聽器類

      定義一個在EL中使用的函數(shù)

      <tag>

      定義一個標(biāo)簽

      <tag>元素的子元素

      標(biāo)  簽

      含  義

      <description>

      <display-name>

      <icon>

      <name>

      指定針對標(biāo)簽的信息

      開發(fā)工具用于顯示的一個簡短名稱

      可被開發(fā)工具使用的圖標(biāo)

      標(biāo)簽名稱

      <tag-class>

       

      <tei-class>

      Java標(biāo)簽處理器類的名稱。注意這是處理器類的全限定名稱,比如com.xx.tag.TableTag

      Javax.servlet.jsp.tagext.TagExtraInfo類的一個可選子類

      <body-content>

       

      <variable>

      <example>

      此標(biāo)簽的主體部分的內(nèi)容。其值可為scriptless\tagdependent\empty,默認(rèn)為empty

      定義腳本變量信息

      使用該標(biāo)簽例子的可選的非正式描述

      <attribute>

      包含了此標(biāo)簽的一個屬性的元數(shù)據(jù)

      <attribute>的子元素

      標(biāo)  簽

      含  義

      <description>

      <name>

      有關(guān)描述的文本信息

      在jsp標(biāo)簽中使用的屬性名稱

      <required>

       

       

      <rtexprvalue>

       

       

      <type>

      指定屬性是必須的還是可選的,默認(rèn)為false,表示屬性可選。如果該值為true,則jsp頁面必須為該屬性提供一個值??赡艿闹祎rue、false、yes、no

      指定屬性是否能接受請求時表達(dá)式的值,默認(rèn)為false,表示不能接受請求時表達(dá)式的值。可能值:true、false、yes、no

      屬性的數(shù)據(jù)類型,該元素只能用在當(dāng)<rtexprvalue>設(shè)置為true時。它指定當(dāng)使用請求時屬性表達(dá)式(<%= %>)返回類型。默認(rèn)string

       

      實(shí)例(繼承SimpleTagSupport類方式):

      編寫一個DateTag標(biāo)簽,輸出系統(tǒng)時間。<c1:date/>,輸出的格式:2011年11月9日

      step1: 寫一個java類,繼承SimpleTagSupport類

      step2: override doTag()方法,在該方法里,實(shí)現(xiàn)相應(yīng)的處理邏輯

      復(fù)制代碼
       1 package mytag;
       2 import java.io.IOException;
       3 import java.text.SimpleDateFormat;
       4 import java.util.Date;
       5 import javax.servlet.jsp.JspException;
       6 import javax.servlet.jsp.JspWriter;
       7 import javax.servlet.jsp.PageContext;
       8 import javax.servlet.jsp.tagext.SimpleTagSupport;
       9 
      10 public class DateTag extends SimpleTagSupport{
      11     @Override
      12     public void doTag() throws JspException, IOException {
      13         PageContext ctx = (PageContext)getJspContext();
      14         JspWriter out = ctx.getOut();
      15         SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
      16         out.println(sdf.format(new Date()));
      17     }
      18 }
      復(fù)制代碼

      step3: 在.tld文件當(dāng)中,描述該標(biāo)簽

      復(fù)制代碼
       1 <?xml version="1.0" encoding="UTF-8" ?>
       2 <taglib xmlns="http://java./xml/ns/j2ee"
       3     xmlns:xsi="http://www./2001/XMLSchema-instance"
       4     xsi:schemaLocation="http://java./xml/ns/j2ee http://java./xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
       5     version="2.0">
       6     <tlib-version>1.1</tlib-version>
       7     <short-name>c1</short-name>
       8     <uri>http://www./mytag1</uri>
       9     <tag>
      10         <name>date</name>
      11         <tag-class>mytag.DateTag</tag-class>
      12         <body-content>empty</body-content>
      13     </tag>
      14 </taglib>
      復(fù)制代碼

      step4: 使用taglib導(dǎo)入標(biāo)簽(jsp中)

       

      1 <%@taglib prefix="c1" uri="http://www./mytag1" %>
      2 <c1:date/>

       

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多