JSP知识点总结(10)
来源:未知 责任编辑:责任编辑 发表时间:2014-03-23 22:28 点击:次
支持迭代的标签 |
| |
| |
(Interface) |
BodyTag ←---BodyTagSupport
可以处理标签体
自定义标签的开发步骤
1,写标签处理器,也就是一个符合自定义标签规范的类xxx.java
2,写标签库定义文件,也就是定义标签的格式规范,也要符合自定义标签的规范xxx.tld
3,建上述两步中的相应文件进行部署。web.xml
tld文件中的配置
<tag>
<name>loop</name>
<tag-class>com.tag.LoopTag</tag-class>
<body-content>jsp</body-content>
<!--设定自定义标签体内的内容,可以置为empty,也就是只能写空标签-->
<attribute>
<name>counter</name><!--配置自定义标签的属性名-->
<required>true</required><!--配置属性是否必须出现-->
<rtexprvalue>true</rtexprvalue><!--允许使用表达式作为属性的值-->
<type>int<type><!--配置属性的类型-->
</attribute>
</tag>
简单的标签处理程序类
1,必须实现Tag接口的doStartTag()和doEndTag()方法;
2,因为不存在Body,doStartTag()方法必须返回SKIP_BODY;
3,如其余页面要执行,doEndTag()方法返回EVAL_PAGE, 否则返回SKIP_PAGE;
4,对于每一个标签属性,你必须在标签处理程序类里定义一个特性以及get和set方法以一致于JavaBeans 体系惯例
带Body的自定义标签
1,必须实现Tag接口的doStartTag()和doEndTag()方法;
2,可以实现IterationTag接口的doAfterBody()方法;
3,可以实现BodyTag接口的doInitBody和setBodyContent方法;
4,doStartTag方法可以返回SKIP_BODY、EVAL_BODY_INCLUDE、或者EVAL_BODY_BUFFERED(当你想使用 BodyContent);
5,doEndTag方法可以返回SKIP_PAGE或EVAL_PAGE;
6,doAfterBody方法可以返回EVAL_BODY_AGAIN, SKIP_BODY;
相关新闻>>
- 发表评论
-
- 最新评论 更多>>