成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 知識(shí)庫(kù) > JSP自定義標(biāo)簽-標(biāo)簽屬性_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

JSP自定義標(biāo)簽-標(biāo)簽屬性_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

熱門標(biāo)簽:電話機(jī)器人需要使用網(wǎng)絡(luò)嗎 海外圖書館地圖標(biāo)注點(diǎn) 潤(rùn)滑油銷售電銷機(jī)器人 電銷機(jī)器人免培訓(xùn) 外呼系統(tǒng)使用方法 南通通訊外呼系統(tǒng)產(chǎn)品介紹 自繪地圖標(biāo)注數(shù)據(jù) 給地圖標(biāo)注得傭金 如何看懂地圖標(biāo)注點(diǎn)

對(duì)自定義標(biāo)簽添加一些屬性,可以使我們的標(biāo)簽功能更加靈活和復(fù)用。例如前一篇博客使用簡(jiǎn)單標(biāo)簽來對(duì)標(biāo)簽體內(nèi)容執(zhí)行一定的次數(shù),就無法在標(biāo)簽上規(guī)定要執(zhí)行的次數(shù),必須在標(biāo)簽處理器類中修改,很不方便,如果使用帶屬性的標(biāo)簽就能很好的解決這個(gè)問題。

  要想使簡(jiǎn)單標(biāo)簽具有屬性,通常需要滿足以下兩個(gè)步驟:

  ① 在標(biāo)簽處理器類中定義屬性,同時(shí)為每個(gè)屬性生成setter方法;

 ?、?在TLD文件中對(duì)于的tag>標(biāo)簽下添加屬性的attribute>標(biāo)簽,同時(shí)attribute>標(biāo)簽下定義其從標(biāo)簽,其中name>從標(biāo)簽是必須要有的。attribute>標(biāo)簽所擁有的從標(biāo)簽如下:  

  name標(biāo)簽:用于指定標(biāo)簽中屬性的名稱。

  required標(biāo)簽:指定該屬性是否必須。

  rtexprvalue標(biāo)簽:指定該屬性是否支持運(yùn)行時(shí)表達(dá)式,如JSP表達(dá)式(%=value  %>)和EL表達(dá)式( ${value} )。如果我們?cè)O(shè)定為“false”的話,那么該屬性只能支持字符串。 

例1:使用簡(jiǎn)單標(biāo)簽來控制標(biāo)簽體內(nèi)容執(zhí)行次數(shù)(帶屬性標(biāo)簽方式)
編寫標(biāo)簽處理器類:

 package com.bjpowernode.simpletag;
 public class LoopTagBody extends SimpleTagSupport {
   private int count; //定義一個(gè)屬性,用來指定循環(huán)次數(shù)
   public void setCount(int count) {  //為該屬性設(shè)置setter方法
     this.count = count;
   }
   @Override
   public void doTag() throws JspException, IOException {  
     JspFragment fragment = this.getJspBody();
     for(int i=0;ithis.count;i++) {  //使用屬性就可以指定循環(huán)次數(shù)
       fragment.invoke(null);
     }
   }  
 }  

 在TLD文件中定義和描述標(biāo)簽處理器類,同時(shí)指定標(biāo)簽所在的uri:

?xml version="1.0" encoding="UTF-8" ?>
 taglib xmlns="http://java.sun.com/xml/ns/j2ee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
   version="2.0">
   description>A tag library exercising SimpleTag handlers./description>
   tlib-version>1.0/tlib-version>
   short-name>SimpleTagLibrary/short-name>
 uri>simpletag/uri>
   tag>
     name>loopbody/name>
     tag-class>com.bjpowernode.simpletag.LoopTagBody/tag-class>
     body-content>scriptless/body-content>
     attribute>
       name>count/name>
       required>true/required>
       rtexprvalue>true/rtexprvalue>
     /attribute>
   /tag>
 /taglib>

  在JSP頁(yè)面的開頭導(dǎo)入taglib指令:

  %@ taglib uri="simpletag" prefix="simple" %>

最后就能在JSP頁(yè)面的主體中使用剛才定義好的帶屬性的簡(jiǎn)單標(biāo)簽了,使用“count”屬性就能指定標(biāo)簽體循環(huán)的次數(shù):

 simple:loopbody count="5">
       神樂! br>
   /simple:loopbody>

在瀏覽器中觀察: 

 

  通過上面的例子我們也可以看到,雖然“count”屬性在標(biāo)簽處理器LoopTagBody類中的類型為int整型,但是在標(biāo)簽上傳入的是字符串類型,這是因?yàn)镴SP容器支持將標(biāo)簽的屬性類型(字符串)轉(zhuǎn)換為八大基本數(shù)據(jù)類型。如果在標(biāo)簽處理器類中定義一個(gè)非八大基本數(shù)據(jù)類型的屬性,那么上面的以上面的方式必定要報(bào)錯(cuò),因?yàn)镴SP容器無法將字符串轉(zhuǎn)換為其它類型。除非在標(biāo)簽屬性中使用其它類型:

例2:

 package com.bjpowernode.simpletag;
 public class DateAttributeTag extends SimpleTagSupport {
   private Date date;
 
   public void setDate(Date date) {
     this.date = date;
   }
   @Override
   public void doTag() throws JspException, IOException {
     this.getJspContext().getOut().write(date.toString());
   }
 }

在TLD文件中描述(這里省略首尾,詳細(xì)內(nèi)容請(qǐng)看例1):

tag>
 name>showtime/name>    tag-class>com.bjpowernode.simpletag.DateAttributeTag/tag-class>
   body-content>empty/body-content>
   attribute>
       name>date/name>
       required>true/required>
       rtexprvalue>true/rtexprvalue>
 /attribute>
 /tag>

注:這里rtexprvalue>標(biāo)簽是必須要的。

在JSP頁(yè)面中導(dǎo)入taglib指令(此處略)后,在JSP頁(yè)面的主體中使用剛才定義的簡(jiǎn)單標(biāo)簽:

  simple:showtime date="%=new Date() %>"/>

在瀏覽器中觀察:  

  因?yàn)樵贘SP頁(yè)面屬性上若以字符串,則因?yàn)樵跇?biāo)簽處理器類并非八大基本數(shù)據(jù)類型,因此只能使用JSP表達(dá)式或EL表達(dá)式將對(duì)象傳入,因此必須在TLD文件中將rtexprvalue>標(biāo)簽設(shè)置為“true”。 

簡(jiǎn)單標(biāo)簽的應(yīng)用,包括無屬性的和帶屬性的標(biāo)簽如何使用都已經(jīng)學(xué)習(xí)完畢,內(nèi)容就這么多,剩下的就可以根據(jù)所學(xué)的進(jìn)行開發(fā)了。

例3:使用簡(jiǎn)單標(biāo)簽來防盜鏈

  如果某個(gè)JSP頁(yè)面需要防止被別的網(wǎng)站盜鏈,可以在該JSP頁(yè)面的最開始部分使用一個(gè)簡(jiǎn)單標(biāo)簽,添加一些屬性如指定從哪過來的網(wǎng)站才可以瀏覽本頁(yè)面內(nèi)容,指定如果是非指定網(wǎng)址過來的鏈接應(yīng)該先讓請(qǐng)求跳到哪里去。

編寫標(biāo)簽處理器類:

 package com.bjpowernode.simpletag;
 public class RefererTag extends SimpleTagSupport {
   private String site; //指定允許來訪請(qǐng)求的網(wǎng)址
   private String location;    //若非指定來訪請(qǐng)求的網(wǎng)址應(yīng)該先跳轉(zhuǎn)到哪里去   
   public void setSite(String site) {
     this.site = site;
   }
   public void setLocation(String location) {
     this.location = location;
   }
   @Override
   public void doTag() throws JspException, IOException {
     PageContext pageContext = (PageContext) this.getJspContext();
     HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();
     HttpServletResponse response = (HttpServletResponse) pageContext.getResponse();
     
     String requestUrl = request.getHeader("referer");
     
     if(requestUrl==null || !requestUrl.startsWith(site)) {
       response.sendRedirect(request.getContextPath()+this.location);
       throw new SkipPageException();
     }
   }
 }

在TLD文件中描述(這里省略首尾,詳細(xì)內(nèi)容請(qǐng)看例1):

 tag>
     name>referer/name>
     tag-class>com.bjpowernode.simpletag.RefererTag/tag-class>
     body-content>empty/body-content>
     attribute>
       name>site/name>
       required>true/required>
       rtexprvalue>true/rtexprvalue>
     /attribute>
     attribute>
       name>location/name>
       required>true/required>
       rtexprvalue>true/rtexprvalue>
     /attribute>
 /tag>

在JSP頁(yè)面中導(dǎo)入taglib指令(此處略)后,在JSP頁(yè)面的主體中使用剛才定義的簡(jiǎn)單標(biāo)簽:

 simple:referer site="http://www.bjpowernode.com" location="/index.jsp" />
 !DOCTYPE HTML>
 html>
  head>
  title>My JSP 'simpletagdemo.jsp' starting page/title>
  /head>
  。。。
 /html>

  結(jié)果:若想訪問該JSP頁(yè)面,只有滿足請(qǐng)求的URL前綴為page屬性指定的網(wǎng)址才能訪問,如果是別的web中的超鏈接或者直接在瀏覽器中輸入該JSP的URL,都會(huì)被跳轉(zhuǎn)到location屬性指定的網(wǎng)頁(yè)。 

例4:使用簡(jiǎn)單標(biāo)簽將標(biāo)簽體中的HTML過濾轉(zhuǎn)義

編寫標(biāo)簽處理器類:

 package com.bjpowernode.simpletag;
 public class HtmlFilterTag extends SimpleTagSupport {
   @Override
   public void doTag() throws JspException, IOException {
     JspFragment fragment = this.getJspBody();
     StringWriter writer = new StringWriter();
     fragment.invoke(writer);
     StringBuffer buffer = writer.getBuffer();
     String content = filter(buffer.toString());
     this.getJspContext().getOut().write(content);
   }
   public String filter(String message) {
     if (message == null)
       return (null);
     char content[] = new char[message.length()];
     message.getChars(0, message.length(), content, 0);
     StringBuilder result = new StringBuilder(content.length + 50);
     for (int i = 0; i  content.length; i++) {
       switch (content[i]) {
       case '':
         result.append("lt;");
         break;
       case '>':
         result.append("gt;");
         break;
       case '':
         result.append("");
         break;
       case '"':
         result.append("quot;");
         break;
       default:
         result.append(content[i]);
       }
     }
     return (result.toString());
   }
 }

  其中過濾方法filter方法可以在Tomcat中參考代碼(位置:【Tomcat】--->【webapps】--->【examples】--->【W(wǎng)EB-INF】--->【classes】--->【utils】--->“HTMLFilter.java”)。
在TLD文件中定義和描述標(biāo)簽:

 tag>
     name>filterhtml/name>
     tag-class>com.bjpowernode.simpletag.HtmlFilterTag/tag-class>
     body-content>scriptless/body-content>
  /tag>

在JSP頁(yè)面中的主體部分中使用剛才自定義的簡(jiǎn)單標(biāo)簽:

 simple:filterhtml>
    a href="www.baidu.com" rel="external nofollow" >百度/a>
   /simple:filterhtml>

瀏覽器中觀察:

您可能感興趣的文章:
  • 詳解Java讀取本地文件并顯示在JSP文件中
  • JAVA JSP頁(yè)面技術(shù)之EL表達(dá)式整理歸納總結(jié)
  • jsp servlet javaBean后臺(tái)分頁(yè)實(shí)例代碼解析
  • springmvc無法訪問/WEB-INF/views下的jsp的解決方法
  • 詳解直接訪問WEB-INF目錄下的JSP頁(yè)面的方法
  • Java項(xiàng)目中如何訪問WEB-INF下jsp頁(yè)面

標(biāo)簽:黃石 銅川 南京 樂山 大連 內(nèi)江 貸款邀約 廣州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《JSP自定義標(biāo)簽-標(biāo)簽屬性_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理》,本文關(guān)鍵詞  JSP,自定義,標(biāo)簽,屬性,動(dòng)力,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《JSP自定義標(biāo)簽-標(biāo)簽屬性_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于JSP自定義標(biāo)簽-標(biāo)簽屬性_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    自由日本语热亚洲人| 色一情一欲一爱一乱| 亚洲欧美日本一区二区| 夜夜未满十八勿进的爽爽影视| 久久久成人免费视频| 少妇又色又爽又黄的视频| 精品女同一区二区三区在线播放| 粉嫩蜜臀av国产精品网站| 欧美久久影院| 欧美调教在线| 国产精品一二三区视频| 中文有码在线| 欧美精品一区在线发布| 国产精品一区在线观看| 好吊色欧美一区二区三区四区| 久久精品日韩| 亚洲成人精品电影在线观看| 免费黄色在线视频| 日本一级一片免费视频| 国产一二三区在线视频| 麻豆精品久久久久久久99蜜桃| 亚洲丰满在线| 老司机av在线免费看| 1000部国产精品成人观看| 久久精品最新免费国产成人| 97人妻精品一区二区三区动漫| 久久精品99无色码中文字幕| 看全色黄大色黄大片免责看的| 在线成人h网| 一区二区精彩视频| 国产无套精品一区二区| 久久精品国产色蜜蜜麻豆| 国产精品久久久久av福利动漫| 青春娱乐分类视频精品2动漫| 视频在线日韩| 98视频在线噜噜噜国产| 制服下的诱惑暮生| 在线视频综合导航| 久久夜夜操妹子| 久久久久久香蕉| 欧美影视一区在线| av观看免费在线| 性欧美超级视频| 国产精品久久久久久久久婷婷| 不卡区在线中文字幕| 日本xxxxwwww| 在线播放av中文字幕| 少妇人妻精品一区二区三区| 国产免费一级| 97久久精品人人爽人人爽蜜臀| 国精品无码一区二区三区| 草草久久久无码国产专区| 午夜激情在线观看视频| 日本韩国视频一区二区| 国产成人综合亚洲| 你懂的视频在线看| 青春有你2免费观看完整版在线播放高清| 日韩精品欧美大片| 在线视频99| 在线电影看在线一区二区三区| 国产欧美精品日韩区二区麻豆天美| 亚洲手机在线观看| 国产精品一区二区三区乱码| 天堂资源在线视频| a美女胸又www黄视频久久| yourporn久久国产精品| 国产最新免费视频| 国产偷人爽久久久久久老妇app| 成人av免费在线看| 日日摸日日添日日躁av| 国产不卡的av| 第四色播日韩| 日本国产在线视频| 欧美性猛交p30| 99精品久久久| 午夜影院在线播放| 波多野结衣在线观看| 亚洲人成欧美中文字幕| 欧美极品一区二区三区| 国产日韩在线一区二区三区| 欧美日本在线播放| 欧美视频官网| 蜜桃成人av| 国产在线视频网| 青青青视频在线播放| 色偷偷免费视频| 亚洲国产一区二区三区在线播放| 亚洲天堂av在线播放| 亚洲毛茸茸少妇高潮呻吟| 91久久中文| 国产麻豆免费视频| 欧美综合色免费| jizz性欧美10| 亚洲一区二区三区在线观看视频| 色悠悠在线视频| 成人自拍视频在线观看| 久久天堂电影| 欧美午夜aaaaaa免费视频| 嫩草影视亚洲| 狠狠网亚洲精品| 国产精品久久久久久久龚玥菲| 7777精品久久久久久| 日本少妇高潮喷水xxxxxxx| 亚洲福利专区| 99成人超碰| 综合天堂久久久久久久| 日韩精品人妻中文字幕| 久久久久久一级片| 黄色一级片在线| 久久精品九色| 国家队第一季免费高清在线观看| 国产在线高清理伦片a| 一个色的综合| 国内在线高清免费视频| 久久久久国产精品嫩草影院| 中文字幕一区二区三区人妻在线视频| av天堂永久资源网| 美洲精品一卡2卡三卡4卡四卡| 麻豆精品一区二区三区| 国产毛片久久久| 国产+人+亚洲| 国产99精品在线观看| 欧美电影免费看| 91免费国产在线观看| 不卡一区二区三区四区| 国内精品久久久久久久久蜜桃| 麻豆影视在线播放| 国产**成人网毛片九色| 羞羞视频在线免费看| 一区二区三区 在线观看视| 日韩av在线资源| 日韩一卡二卡三卡四卡| 中文字幕免费精品一区| 日本高清不卡一区二区三区视频| 久久国产手机看片| 91精品国产丝袜白色高跟鞋| 午夜小视频在线观看| 国产福利电影在线播放| 激情五月婷婷久久| 97视频在线观看亚洲| 欧美日韩裸体免费视频| 欧美黄免费看| 午夜久久久久久久| 99热在线观看免费精品| 亚洲色图.com| 黄色免费观看| 9999国产精品| 亚洲欧美日韩中文视频| 青青草原成人在线视频| av一二三不卡影片| 不卡中文字幕在线| 2019av中文字幕| 国产精品久久看| 黄色成人免费观看| 欧美日韩在线一区二区三区| 亚洲观看高清完整版在线观看| 精品国产第一页| 一个人免费观看视频www在线播放| 草草草在线视频| 日本不卡二区高清三区| 视频精品一区二区| 天天综合天天做| 精品国产乱码久久久久久1区2匹| japan乱配videos老少配| 午夜视频在线免费播放| 欧美午夜精品理论片a级按摩| 精品国产乱码久久久久久1区2匹| 久久视频这里只有精品| 久久天天躁狠狠躁老女人| 青青操在线视频观看| 2019国产精品自在线拍国产不卡| 亚洲国产成人av好男人在线观看| 激情亚洲网站| 欧美电影免费提供在线观看| 2020国产在线视频| 亚洲黄色大片| 97精品久久久中文字幕免费| 午夜写真片福利电影网| 亚洲欧美一区二区三区在线观看| 午夜久久福利影院| 无遮挡的视频在线观看| 国产5g影院天天爽天天看| 国产精品无码一区二区桃花视频| 在线视频一区二区三| 亚洲丝袜自拍清纯另类| 久久噜噜色综合一区二区| 亚洲一区二区三区色| 欧美xxxx三人交性视频| 国产一级免费视频| 美女把尿口扒开让男人桶在线观看| 久久久久久久免费视频了| 欧美激情理论| 激情偷拍久久| 国产色在线观看| 99久久久无码国产精品6| 午夜精品福利一区二区| 亚洲免费成人av在线| 色综合天天狠天天透天天伊人| 欧美伊人精品成人久久综合97| 欧美二区观看| 奇米影视888狠狠狠777不卡| 亚洲免费av一区| 性欧美hd调教| 青青色在线视频| 日韩你懂的电影在线观看| 直接看的黄色网址| 亚洲一区亚洲二区亚洲三区| 欧美一激情一区二区三区| 97精品中文字幕| 国产高清不卡无码视频| 国产亚洲精品美女久久| 精品久久久久久久久久久aⅴ| 99热在线免费| 中文天堂最新版本在线观看| 韩日精品中文字幕| 欧美gay囗交囗交| 香蕉久久国产av一区二区| 国产在线你懂得| 7799精品视频天天看| 天堂精品一区二区三区| 欧洲一区二区视频| 91日韩在线播放| 久久激情视频免费观看| 在线观看美女av| 精品国产亚洲一区二区在线观看| 白丝校花扒腿让我c| 日本aⅴ写真网站免费| 国产精品素人视频| 奇米色777欧美一区二区| 亚洲精品一区二区三区新线路| 综合激情一区| 亚洲最新视频在线播放| 国产亚洲精品自拍| 韩日在线播放| 丰满肉嫩西川结衣av| 视频在线观看免费高清| 一区二区三区四区乱视频| 国产免费一区二区三区| 综合精品久久久| 乐播av一区二区三区| 欧美网站一区二区| 久久精品男人的天堂| 噜噜噜久久亚洲精品国产品麻豆| 国产中文字幕免费| 免费av一区二区| 自己做鸭怎么接单寻找客源| 成人午夜天堂| 亚洲熟女一区二区三区| 久久综合伊人77777尤物| 国产一级淫片a视频免费观看| 成人影院免费观看| 久久综合九色综合97婷婷女人| 亚洲精品xxxxx| 国产成人亚洲综合无码| 69堂国产成人免费视频| 米奇精品一区二区三区在线观看| 91日韩精品视频| 性欧美大胆高清视频| 午夜精品视频在线观看一区二区| 日韩伦理在线观看| 性xxxxxxxxx| 日韩在线观看免费高清| 亚洲国产精品久久久天堂| 国产精品自拍视频一区| 欧美刺激脚交jootjob| 亚洲午夜久久久久久久久| 日韩视频一区二区三区四区| 五月婷婷六月丁香激情| 日韩免费毛片视频| 国产自产视频| 国产又粗又硬视频| 91大神免费观看| xxxx日本黄色| 国产精品一区二区三区不卡| 91丨porny丨最新| 日韩美女在线看| 久久久视频在线| av小次郎在线| 久久精品视频va| 在线观看日韩| 欧美成人vr18sexvr| 久精品在线观看| 热久久久久久久久| 先锋资源av在线| 欲香欲色天天天综合和网| 久久天天东北熟女毛茸茸| 秘密基地免费观看完整版中文| 综合精品久久| 欧美日韩精品一区二区三区视频播放| 国产精久久久久久| 超碰一区二区三区| 国产精品久久久久国产a级| 六月丁香婷婷在线| 色屁屁草草影院ccyycom| 天天干天天色天天| 午夜精品在线| 日韩精品成人一区二区在线| 老司机午夜精品视频| 中文字幕一区2区3区| a级黄色小视频| 四季av在线一区二区三区| 欧美私人情侣网站| 亚洲国产wwwccc36天堂| 亚洲欧美变态国产另类| 日本一区精品久久久久影院| 蜜臀av一区二区在线观看| 久久人人看视频| 国产精品老女人视频| 97色在线视频观看| 青草av在线| 你懂的国产视频| 亚洲第一天堂网| 天天插天天狠天天透| 性猛交ⅹxxx富婆video| 亚洲999一在线观看www| 久久久久免费网| 国产精品视频免费一区| 欧美黄色直播| 任你躁av一区二区三区| 91在线短视频| 欧美精品第1页| 中文字幕亚洲欧美| 欧洲美女免费图片一区| 狠狠久久伊人| 国产浪潮av性色av小说| 国产suv精品一区二区883| 久久成人精品| 国产精品影视在线|