一、
创建标签的处理类
public class MyTag extends TagSupport { @Override public int doStartTag() throws JspException { try { this.pageContext.getOut().println("这是标签的起始处理输出结果"); } catch (IOException e) { e.printStackTrace(); } return this.EVAL_BODY_INCLUDE; } @Override public int doEndTag() throws JspException { try { this.pageContext.getOut().println("这是标签的结束处理输出结果"); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return this.EVAL_PAGE; } }
二、创建标签库描述文件标签库描述文件后缀名是:.tld
必须保存在WEB-INF目录下。
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <taglib> <tlib-version>1.0</tlib-version> <jsp-version>1.1</jsp-version> <short-name>myTag</short-name> <uri>/myTag</uri> <tag> <name>myTag</name> <tag-class>com.itzhai.tag.MyTag</tag-class> <body-content>empty</body-content> </tag> </taglib>三、在JSP文件中引入标签库<%@ taglib uri="/myTag" prefix="pre" %>四、使用标签<pre:myTag/>==============================================5、创建一个带有属性的自定义标签:创建标签的处理类
public class MyTag2 extends TagSupport { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public int doEndTag() throws JspException { try { this.pageContext.getOut().println(name); } catch (IOException e) { e.printStackTrace(); } return this.EVAL_PAGE; } }创建标签库描述文件
<taglib> <tlib-version>1.0</tlib-version> <jsp-version>1.1</jsp-version> <short-name>myTag</short-name> <uri>/myTag</uri> <tag> <name>myTag</name> <tag-class>com.itzhai.tag.MyTag</tag-class> <body-content>empty</body-content> </tag> <tag> <name>myTag2</name> <tag-class>com.itzhai.tag.MyTag2</tag-class> <body-content>empty</body-content> <attribute> <name>name</name> <required>true</required> </attribute> </tag> </taglib>使用自定义标签:
<%@ taglib uri="/myTag" prefix="pre" %> <pre:myTag2 name="user1"/>