国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

實現一個簡單的JSP自定義標簽開發過程

2024-09-05 00:20:38
字體:
來源:轉載
供稿:網友

  1.首先創建實現了tag功能的輔助類,功能是改變主體文本的顏色。這個類可以繼承tagsupport或者bodytagsupport,兩者的差別是前者適用于沒有主體的標簽,而后者適用于有主體的標簽。如果選擇繼承tagsupport,可以實現dostarttag和doendtag兩個方法實現tag的功能,如果選擇繼承bodytagsupport,可以實現doafterbody這個方法。核心代碼如下所示:

import java.io.ioexception;
import javax.servlet.jsp.jspwriter;
import javax.servlet.jsp.tagext.*;
/** *//**
*
* @author administrator
*/
public class messagewritertaghandler extends bodytagsupport...{
  //主體的字體顏色屬性
  protected string _fontcolor = "black";
  
  /** *//** creates a new instance of messagewritertaghandler */
  public messagewritertaghandler() ...{
  }
  public string getfontcolor() ...{
    return _fontcolor;
  }
  public void setfontcolor(string fontcolor) ...{
    _fontcolor = fontcolor;
  }
  
  public int doafterbody()...{
    bodycontent bc = this.getbodycontent();
    jspwriter out = bc.getenclosingwriter();
    stringbuffer sb = new stringbuffer();
    try ...{
      sb.append("<font color="");
      sb.append(_fontcolor);
      sb.append("">");
      sb.append(bc.getstring());
      sb.append("</font>");
      out.print(sb.tostring());
    } catch (ioexception ex) ...{
      //ex.printstacktrace();
    }
    
    return eval_page;
  }
}

  2.編寫.tld文件,該文件是tag的描述,需要說明的是tag的attribute的required要設置為true,否則的話標簽的功能有可能無法使用。具體原因我還不清楚。tld的代碼如下所示:

<?xml version="1.0" encoding="utf-8"?>
<taglib version="2.0" 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 web-jsptaglibrary_2_0.xsd">
 <tlib-version>1.0</tlib-version>
 <short-name>writer</short-name>
 <uri>tags/messagewriter</uri>
 <tag>
   <name>write</name>
   <tag-class>com.lilijun.tags.messagewritertaghandler</tag-class>
   <body-content>jsp</body-content>
   <attribute>
     <name>fontcolor</name>
     <required>true</required>>
   </attribute>
 </tag>
</taglib>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 嘉荫县| 常山县| 精河县| 兴安盟| 巴中市| 松原市| 开远市| 湖口县| 渭南市| 闸北区| 宜宾市| 鄯善县| 兴城市| 梨树县| 淮安市| 额敏县| 卢氏县| 三都| 寻乌县| 金寨县| 正阳县| 沙河市| 蒙自县| 云林县| 监利县| 石泉县| 滦南县| 佳木斯市| 子长县| 定日县| 同仁县| 资阳市| 沛县| 德令哈市| 杭锦旗| 祁阳县| 德钦县| 蛟河市| 朝阳县| 屏东市| 龙里县|