JSPTag标签库
標(biāo)簽庫程序應(yīng)該有以下幾部分組成:
(1)、標(biāo)簽的具體實現(xiàn)文件(*.java):必須繼承javax.servlet.jsp.tagext.TagSuport
(2)、標(biāo)簽的描述文件(*.tld)
(3)、如果需要可以在web.xml中進(jìn)行設(shè)置
(4)、在JSP中通過標(biāo)簽進(jìn)行自定義標(biāo)簽庫的調(diào)用
一、在具體實現(xiàn)文件(*.java)中,doStartTag方法:表示標(biāo)簽的開始
?????????????????????????????????????????????doStartEnd方法:表示標(biāo)簽的結(jié)束
二、*.tld文件是標(biāo)簽的描述文件,此文件對標(biāo)簽庫的運行起絕對性作用,*.tld文件也是一個xml文件,如果是使用xml,則需要DTD、SCHEMA支持。
Name:表示標(biāo)簽的方法名稱:<jsp:forward><jsp:include>
java實現(xiàn)類:
package com.wyq.TagTest;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;
public class Hello extends TagSupport{
?@Override
?public int doStartTag() throws JspException {
???//從頁面獲取request,得到頁面的值
???ServletRequest request = pageContext.getRequest();
??String str="www.wyq.cn";
??//在servlet中打印要使用printWriter
??//如果在標(biāo)簽中打印需要使用pageContext
??JspWriter out=pageContext.getOut();
??try{
???out.print(str);
??}catch(Exception e){
???e.printStackTrace();
??}
??//只要打印完了字符串,則后面的代碼就不需要執(zhí)行了
??
??return TagSupport.SKIP_BODY;
?}
}
tld文件的配置:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "web-jsptaglibrary_1_2.dtd" >
<taglib>
? <tlib-version>1.0</tlib-version>
? <jsp-version>2.0</jsp-version>
? <short-name>hello</short-name>
? <tag>
??? <name>mldn</name>
??? <tag-class>com.wyq.TagTest.Hello</tag-class>
??? <body-content>empty</body-content>
? </tag>
</taglib>
轉(zhuǎn)載于:https://www.cnblogs.com/wyqtomorrow/archive/2007/06/14/783468.html
總結(jié)
- 上一篇: .net Remoting(1)基本内容
- 下一篇: JS--切换图片总结