<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-86  評論-33  文章-0  trackbacks-0
    =========自定義標簽學習總結========= 2005年7月28日 09:54:07 Derek

    標簽的運行方式是:
    JSP頁面解析中發現自定義標簽,則到上面的標簽說明中尋找:如
    <%@ taglib uri="/mytitle.tld" prefix="dada"%>
    此時它會找到該標簽的uri ,uri 在web.xml中已經定義了
     <taglib>
        
    <taglib-uri>/mytitle.tld</taglib-uri>
        
    <taglib-location>/WEB-INF/mytitle.tld</taglib-location>
      
    </taglib>
    此時它會通過uri在web.xml中查找到該標簽的描述文件tld。那么在tld描述文件中又定義了該標簽的處理類,具體完成業務的操作,標簽處理類繼承TagSupport,處理類完成操作后將返回頁面。
    <name>title</name>
        
    <tagclass>com.derek.tags.TitleTag</tagclass>
     
     準備工作 :首先在WEB-INF\lib下添加taglibs-log.jar包
    1、創建標簽描述文件
         在WEB-INF下新建一個tld文件,該文件描述了此tld文件將由那個處理類完成操作,并且定義了該標簽的屬性。一個<taglib>中可以有很多個<tag>,由<name>標簽名區分。
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
    <taglib>
    <tlibversion>1.0</tlibversion>
    <jspversion>1.1</jspversion>
    <shortname>html</shortname>
    <uri>http://jakarta.apache.org/struts/tags-html</uri>

    <tag>
         
    <name>title</name>
        
    <tagclass>com.derek.tags.TitleTag</tagclass>
        
    <bodycontent>empty</bodycontent>
        
    <attribute>
            
    <name>begin</name>
            
    <required>true</required>
        
    </attribute>
            
    <attribute>
            
    <name>end</name>
            
    <required>true</required>
        
    </attribute>
    </tag>

    </taglib>

    2、創建標簽處理類
         該類繼承  TagSupport,覆蓋doEndTag()方法
       
    package com.derek.tags;

    import javax.servlet.jsp.tagext.TagSupport;
    import javax.servlet.jsp.JspException;
    import java.util.Properties;
    import java.io.
    *
    ;
    import javax.servlet.jsp.JspWriter;

    public class
     TitleTag extends TagSupport {
      
    private String begin = null
    ;
      
    private String end = null
    ;
      
    public
     TitleTag() {}
      
    public String getBegin() {return
     begin;}
      
    public void setBegin(String begin) {this.begin =
     begin;}
      
    public String getEnd(){return
     end;}
      
    public void setEnd(String end){this.end =
     end;}

      
    public int
     doEndTag() throws JspException {
        Properties ps 
    = (Properties)pageContext.getAttribute("ps",pageContext.APPLICATION_SCOPE);//從上下文中取的message.properties

                      JspWriter jw = pageContext.getOut();
        
    if(begin!=null&&begin.length()>0
    ){
           String header 
    =
     ps.getProperty(begin);
           System.
    out.println("頁眉"+
    begin);
           
    try
     {
          jw.println(header);
            }
    catch
     (IOException ex) {ex.printStackTrace();}
        }
        
    if(end!=null&&end.length()>0
    ){
           String footer 
    =
     ps.getProperty(end);
           System.
    out.println(" 頁腳"+
    end);
        
    try
     {
          jw.println(footer);
          }
    catch
     (IOException ex1) {ex1.printStackTrace();}
        }
        
    return
     SKIP_BODY;
      }

      
    public void
     release() {
        super.release();
      }
    }

    3、修改web.xml文件
      在web.xml中<web-app>下添加,將標簽的uri與具體標簽描述文件綁定
    <taglib>
        
    <taglib-uri>/mytitle.tld</taglib-uri>
        
    <taglib-location>/WEB-INF/mytitle.tld</taglib-location>
    </taglib>

    4、在頁面中使用標簽
    首先在頁面中導入標簽
    <%@ taglib uri="/mytitle.tld" prefix="dada"%>
    該句表示標簽前綴為“dada”的標簽將調用uri指定的標簽,uri可以隨便起名字,但一定要可web.xml中定義的uri相對應。
    然后就可以在頁面中使用了
    <dada:title begin="" end="footer"/>

    posted on 2005-09-11 09:56 Derek.Guo 閱讀(543) 評論(0)  編輯  收藏 所屬分類: Java
    MSN:envoydada@hotmail.com QQ:34935442
    主站蜘蛛池模板: 国产禁女女网站免费看| 免费看的一级毛片| 国产亚洲av片在线观看16女人| 亚洲欧洲免费无码| 女人被男人躁的女爽免费视频| 国产精品亚洲精品青青青| 国产h视频在线观看网站免费| 久久精品国产亚洲精品2020| 巨波霸乳在线永久免费视频| 亚洲综合一区二区精品久久| 2021在线永久免费视频| 亚洲国产精品xo在线观看| 亚洲第一成年免费网站| 亚洲高清国产拍精品熟女| 免费国产成人午夜私人影视| 成年大片免费高清在线看黄| 中文字幕亚洲综合久久菠萝蜜 | 9久久免费国产精品特黄| 久久亚洲中文字幕精品一区四 | 一级一级毛片免费播放| 亚洲人成色77777| 91精品免费不卡在线观看| 激情综合亚洲色婷婷五月APP| 免费看大美女大黄大色| 产传媒61国产免费| 亚洲精品无码不卡在线播HE| 成人免费观看一区二区| 亚洲欧美在线x视频| 在线精品亚洲一区二区三区| 精品无码免费专区毛片| 激情小说亚洲色图| 亚洲精品无码精品mV在线观看| 99ee6热久久免费精品6| 亚洲精品国产综合久久久久紧| 亚洲AV无码专区日韩| 免费黄网站在线看| 精品无码专区亚洲| 久久久久亚洲AV成人无码| 日韩吃奶摸下AA片免费观看| 99视频在线看观免费| 亚洲精品无码成人|