标签:
1.创建自定义标签的步骤
a)创建标签实现类
b)创建 .tbl 文件,在该文件中配置标签实现类
c)在 jsp 页面中使用<%@taglib prefix="" uri="" %>指定标签实现类的配置文件 .tbl
a) 创建标签实现类
1)实现SimpleTag接口,该接口的方法有:
public void doTag() 每次使用标签时,Tomcat就会自动调用该方法,是在调用其它自动调用方法后调用
public void setParent(JspTag)
public void getParent()
public void setJspBody(JspFragment) 自动调用
public void setJspContext(JspContext) 自动调用 PageContext是JspContext的子类
2)或者继承SimpleTagSupport类,然后重载doTag()方法
b)创建 .tbl 文件,在该文件中配置标签实现类
<?xml version="1.0" encoding="UTF-8"?>
<taglib xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd"
version="2.1">
<description>zoghin test tag</description>
<display-name>test</display-name>
<tlib-version>1.0</tlib-version>
<short-name>c</short-name>
<uri>http://java.sun.com/jsp/jstl/core</uri>
<tag>
<name>test</name> //标签名,在标签使用需用到
<tag-class>tags.Tag1</tag-class> //标签实现类 .java 文件路径
<body-content>scriptless</body-content> //标签体,如为empty则该标签为空标签
<attribute> //标签属性
<name>test</name> //属性名
<required>true</required> //该属性是否是必须的
<rtexprvalue>true</rtexprvalue> //运行时表达式值,是否支持EL表达式
</attribute>
</tag>
</taglib>
c)在 jsp 页面中使用<%@taglib prefix="" uri="" %>指定标签实现类的配置文件 .tbl
<%@ taglib prefix = "t" uri = "/WEB-INF/tlds/tag1.tld" %> "/WEB-INF/tlds/tag1.tld"为标签的配置文件 .tld 相对于项目所在路径
<t:test test="true"> 使用tag1.tld配置的标签名为test的标签,并给出了test属性,该标签的test属性必须给出,以为tag1.tld配置中<required>true</required>
标签:
原文地址:http://www.cnblogs.com/zoghin/p/4802330.html