JSP自定义标签
2014-06-09 22:29
253 查看
(1)开发自定义标签库:继承父类:SimpleTagSupport重写doTag()方法;
(2)建立TLD文件:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
"http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
<taglib>
<tlib-version>1.0</tlib-version>
<short-name>mytaglib</short-name>
<uri>/WEB-INF/tlds/diego.tld<uri>
<tag>
<name>hellotag</name>
<tag-class>HelloTag</tag-class>
<body-content>empty</body-content>
</tag>
</tiglib>
(3)使用标签库:
<%@ taglib uri="/WEB-INF/tlds/diego.tld" prefix="mytag"%>
<mytag:hellotag/>
(4)带属性的标签:
<attribute>
<name>属性名</name>
<required>属性是否必须</required>
<fragment>是否支持jsp脚本</fragment>
</attribute>
(5)带标签体的标签:<body-content>scriptless</body-content>
(6)以页面片段作为属性的标签:
标签处理类中定义类型为JspFragment属性,该属性代表页面片段;
使用标签库是,通过<jsp:attribute:.../>动作指令为标签库属性指定指定值;
(7)动态属性标签:(1)实现DynamicAttributes接口,实现setDynamicAttribute方法;(2)在标签文件中用<dynamic-attributes.../>进行配置;
<mytag:dynaAttr name="mytesttag" uri='""/>
<mytag:dynaAttr 书名="mytesttag" 价格='"" 出版时间=“”/>可以有很多个动态属性;
(2)建立TLD文件:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
"http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
<taglib>
<tlib-version>1.0</tlib-version>
<short-name>mytaglib</short-name>
<uri>/WEB-INF/tlds/diego.tld<uri>
<tag>
<name>hellotag</name>
<tag-class>HelloTag</tag-class>
<body-content>empty</body-content>
</tag>
</tiglib>
(3)使用标签库:
<%@ taglib uri="/WEB-INF/tlds/diego.tld" prefix="mytag"%>
<mytag:hellotag/>
(4)带属性的标签:
<attribute>
<name>属性名</name>
<required>属性是否必须</required>
<fragment>是否支持jsp脚本</fragment>
</attribute>
(5)带标签体的标签:<body-content>scriptless</body-content>
(6)以页面片段作为属性的标签:
标签处理类中定义类型为JspFragment属性,该属性代表页面片段;
使用标签库是,通过<jsp:attribute:.../>动作指令为标签库属性指定指定值;
(7)动态属性标签:(1)实现DynamicAttributes接口,实现setDynamicAttribute方法;(2)在标签文件中用<dynamic-attributes.../>进行配置;
<mytag:dynaAttr name="mytesttag" uri='""/>
<mytag:dynaAttr 书名="mytesttag" 价格='"" 出版时间=“”/>可以有很多个动态属性;
相关文章推荐