当前位置: 首页 > 图文教程 > 网络编程 > JSP > JSP中的TagLib应用(4-2)

JSP
成为一个成功Jsp程序员的九步
JSP之plugin的使用
深入剖析JSP和Servlet对中文的处理
Tomcat5+Mssql server 2000数据库连接池配置之旅
改变JSP的文件后缀
JSP 2.1和JSF 1.2规范发布预览版本
JSP彩色验证码
JSP和Struts解决用户退出问题
测试你对技术的掌握度:JSP程序员成长之路
Java学习的捷径
如何迅速成为Java高手
体验Java 1.5中面向(AOP)编程
Java中基于Aspectwerkz的AOP
2004开发技术年度综述之Java世界
JavaBeans程序开发
开发基于Java的图形用户界面
Java加密和数字签名编程
Java应用程序中创建图像
初探Java类加载机制
EJB3.0之实体Bean的继承

JSP中的TagLib应用(4-2)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-04   浏览: 72 ::
收藏到网摘: n/a

  我们在处理自定义的tag时, 对父类的doStartTag() 和doEndTag() 要进行重载,如果在tld文件中定义了tag的属性, 就需要在tag handler里对每个属性定义相应的setxxx/getxxx方法.

在doStartTag()中是从Template类所定义的Hashtable中取得TemplateParameter对象.

在doEndTag()中

pageContext.getRequest().getRequestDispatcher(templateParam.getValue()).include(pageContext.getRequest(), pageContext.getResponse());

这是在页面里包含通过jsp页的上下文返回通过tag的属性值指定的资源对象(RequestDispatcher)所产生的内容..

doStartTag()和doEndTag()返回值是在Tag Interface里定义的静态int

SKIP_BODY隐含0

Skip body evaluation. Valid return value for doStartTag and doAfterBody. 跳过对body的处理。

就是跳过了开始和结束标签之间的代码。

EVAL_BODY_INCLUDE 隐含1

Evaluate body into existing out stream. Valid return value for doStartTag.

This is an illegal return value for doStartTag when the class implements BodyTag,

since BodyTag implies the creation of a new BodyContent.

将body的内容输出到存在的输出流中。包括是jsp代码,也可以被输出

SKIP_PAGE 隐含5

Skip the rest of the page. Valid return value for doEndTag.

忽略剩下的页面。

EVAL_PAGE 隐含6

Continue evaluating the page. Valid return value for doEndTag().

继续执行下面的页

在这个类里还有对其他类的引用,我就不列出来了. 各位可以自己去研究.