首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級(jí) | 職稱英語 | 商務(wù)英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語 | 成人英語三級(jí) | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學(xué)習(xí) | 法語 | 德語 | 韓語
計(jì)算機(jī)等級(jí)考試 | 軟件水平考試 | 職稱計(jì)算機(jī) | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
華為認(rèn)證 | Java認(rèn)證
公務(wù)員 | 報(bào)關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導(dǎo)游資格
報(bào)檢員 | 教師資格 | 社會(huì)工作者 | 外銷員 | 國際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價(jià)格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡(luò)編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格考試會(huì)計(jì)證) | 經(jīng)濟(jì)師 | 會(huì)計(jì)職稱 | 注冊(cè)會(huì)計(jì)師 | 審計(jì)師 | 注冊(cè)稅務(wù)師
注冊(cè)資產(chǎn)評(píng)估師 | 高級(jí)會(huì)計(jì)師 | ACCA | 統(tǒng)計(jì)師 | 精算師 | 理財(cái)規(guī)劃師 | 國際內(nèi)審師
一級(jí)建造師 | 二級(jí)建造師 | 造價(jià)工程師 | 造價(jià)員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價(jià)師 | 土地估價(jià)師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項(xiàng)目管理師 | 土地登記代理人 | 環(huán)境影響評(píng)價(jià)師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價(jià)師 | 安全評(píng)價(jià)師 | 電氣工程師 | 注冊(cè)測(cè)繪師 | 注冊(cè)計(jì)量師
繽紛校園 | 實(shí)用文檔 | 英語學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲

計(jì)算機(jī)等考二級(jí)JAVA備考:JSP自定義標(biāo)簽編寫

本文為“計(jì)算機(jī)等考二級(jí)JAVA備考:JSP自定義標(biāo)簽的編寫”,以供廣大學(xué)員參考使用。更多關(guān)于計(jì)算機(jī)等級(jí)考試資料,請(qǐng)?jiān)L問考試吧計(jì)算機(jī)等級(jí)考試頻道。

  簡(jiǎn)要說明:

  1 如何輸出到j(luò)sp頁面:調(diào)用JspWriter JspWriter out = pageContext.getOut();out.print......記住這個(gè)方法就可以了。

  2 輸出后如何作處理,函數(shù)會(huì)返回幾個(gè)值之一。EVAL_PAGE 表示tag已處理完畢,返回jsp頁面。還有幾個(gè)值,例如 EVAL_BODY_AGAIN 和EVAL_BODY_INCLUDE等 跟流程控制有關(guān).

  編寫tld

  tld代碼

  <?xml version="1.0" encoding="ISO-8859-1" ?>

  <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">

  <taglib>

  <tlib-version>1.0</tlib-version>

  <jsp-version>1.2</jsp-version>

  <short-name>test</short-name>

  <!--OutputTag-->

  <tag>

  <name>out</name>

  <tag-class>test.OutputTag</tag-class>

  <body-content>empty</body-content>

  <attribute>

  <name>name</name>

  <required>false</required>

  <rtexprvalue>false</rtexprvalue>

  </attribute>

  </tag>

  </taglib>

  在WEB-INF下新建tlds文件夾,把這個(gè)文件取名為test.tld,放到tlds文件夾下。引用時(shí)的路徑應(yīng)該這樣:WEB-INF\tlds\test.tld

  關(guān)于tld的簡(jiǎn)單說明:

  short-name:taglib的名稱,也稱為前綴。比如“c:out value=""/” 里的“c”

  name:tag的名字。例如“c:out value=""/” 里的"out”,我們的類也取名為out,由于有前綴作區(qū)分,不會(huì)同其他庫的同名tag組件混淆

  tag-class:完整的tag組件路徑,記著帶包名

  body-content:指tag之間的內(nèi)容。例如c:out value="" ...... /c 起始和關(guān)閉標(biāo)簽之間就是body-content。由于沒有處理body-content ,所以上面設(shè)為empty,如果是嵌套標(biāo)簽,或則是要在服務(wù)器端處理標(biāo)簽體的話,就是jsp了

  “attribute”里的name:屬性名字。例如c:out value=""/里的value。名字可任意取,只要類里提供相應(yīng)的set方法即可。

  required:是否必填屬性。

  rtexprvalue:是否支持運(yùn)行時(shí)表達(dá)式取值就是是否可以<%=%>或則是${}方式傳值。

  這是tag的強(qiáng)大功能。

  編寫jsp頁面

  <%@ page language="java"%>

  <%@ taglib uri="/WEB-INF/tlds/test.tld" prefix="test"%>

  <html>

  <body>

  Test Tag: <test:out name="TEST"/>

  </body>

  </html>

  啟動(dòng)服務(wù)器,如果一切按照上面步驟的話,就能看到 Test Tag: Hello! TEST 字樣。最簡(jiǎn)單的tag就這么出來了。并不難,是不是?

  ------------------------------------------------------------------

  Tag系列的Interface里定義的靜態(tài)int,通過他們也能一窺tag組鍵的執(zhí)行流程,這幾個(gè)靜態(tài)值分別是:

  SKIP_BODY : 跳過了開始和結(jié)束標(biāo)簽之間的代碼,一般是在doStartTag中使用

  EVAL_BODY_INCLUDE  :處理嵌套的標(biāo)簽,一般是在doStartTag中使用,由負(fù)責(zé)處理標(biāo)簽正文的tag接口提供

  EVAL_BODY_BUFFERED :對(duì)包含的內(nèi)容進(jìn)行解析一般是在doStartTag中使用,由負(fù)責(zé)處理標(biāo)簽正文的bodyTag接口提供,目的是通知jsp容器作好讀取正文的工作(創(chuàng)建一個(gè)body- content包裝正文和獲取存放操作結(jié)果的out對(duì)象,便于以后的操作和輸出).

  EVAL_BODY_AGAIN:處理標(biāo)簽正文,嵌套標(biāo)簽的iteratorTag接口的使用

  SKIP_PAGE : 忽略剩下的頁面,一般是在doEndTag中使用

  EVAL_PAGE : 繼續(xù)執(zhí)行下面的頁, 一般是在doEndTag中使用。

  相關(guān)推薦:計(jì)算機(jī)二級(jí)JAVA備考:JAVA獲得域名的IP地址
       等考二級(jí)JAVA考試必知:抽象類與接口的區(qū)別
       等考二級(jí)JAVA:Java規(guī)則引擎工作原理及應(yīng)用
文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。