Java之自訂標籤一

來源:互聯網
上載者:User

標籤:

     在JSP頁面中,通常為了處理某些商務邏輯需要編寫大量的Java代碼,在一定程度上使得頁面變得更加的複雜,並且不直觀,也不利於前端人員對jsp頁面的修改,通過自訂標籤可以實現負責的、可重複利用的功能,並且簡化了jsp頁面,方便了後期的維護和修改。

 

    一.實現自訂標籤的步驟

        1.首先編寫自訂標籤處理類:繼承或實現相應的介面

        2.編寫標籤描述檔案:存放到網站的web-info目錄中

        3.在頁面中引入標籤檔案

   二.自訂標籤實作類別和介面的描述

   JspTag:標記介面,實現了該介面的類可以處理標籤

   Tag:主要描述標籤處理類的共性,實現該介面的類不能處理標籤體

   TagSupport:處理標籤的屬性的類

   BodyTagSupport:處理標籤的標籤的類

   三.介面類之間的關係

  

 四.一般標籤處理類(不帶屬性,標籤體)

   1.編寫一個標籤處理類

 1 public class HelloHanler implements Tag { 2     private PageContext pageContext = null; 3     // 標籤結束的時候執行 4     public int doEndTag() throws JspException { 5         return 0; 6     } 7     // 標籤開始的時候執行 8     public int doStartTag() throws JspException { 9         // 給頁面輸出一個hello資訊10         JspWriter out = pageContext.getOut();11         // 輸出資訊12         String info = "welcome!!!!!!!";13         try {14             out.write(info);15         } catch (IOException e) {16             e.printStackTrace();17         }18         return 0;19     }20     // 擷取其父標籤21     public Tag getParent() {22         return null;23     }24     // 釋放25     public void release() {26 27     }28     // 設定jsp內容物件29     public void setPageContext(PageContext pageContext) {30        this.pageContext = pageContext;31     }32     // 設定父標籤33     public void setParent(Tag t) {34 35     }36 }

   2.編寫描述檔案

 1 <?xml version="1.0" encoding="UTF-8"?> 2 <taglib  3     xmlns="http://java.sun.com/xml/ns/javaee" 4     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 5     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd" 6     version="2.1"> 7   <!-- 2. 編寫標籤庫描述檔案 -->   8   <tlib-version>1.0</tlib-version> 9   <short-name>tag</short-name>10    <tag>  11     <name>hellotag</name>12     <tag-class>cn.mytag.test.HelloHanler</tag-class>13     <body-content>empty</body-content>14   </tag>15 </taglib> 

   3.jsp頁面引入標籤

1 <%@taglib uri="/WEB-INF/mytag.tld" prefix="mytag"%>2      <br/>3 <mytag:hellotag/>

  以上主要是簡單的不包含屬性和標籤體的自訂標籤,下次繼續剩下的自訂標籤的學習。

Java之自訂標籤一

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.