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

JSP
Hibernate 的原理与配置
Java中关于XML的API
Eclipse插件开发之新手入门
为什么要学习Hibernate?
Java2下Applet数字签名
Weblogic上配置Hibernate为JNDI
JavaBean(EJB) 3.0 全新体验
品味Spring 的魅力
Hibernate的JNDI绑定分析
Java开源项目Hibernate
JDO 2.0查询语言的特点
JBuilderX+SQL Server开发hibernate
运行时实现Java的多态性
Hibernate获得成功的十大理由
Hibernate包作用详解
Java动态代理实现AOP
J2SE1.5 注释语法
Java代码构建一个线程池
JBuilder2005开发Web应用程序
Java数据库编程中的技巧

JSP中的TagLib应用(4-2)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-04   浏览: 71 ::
收藏到网摘: 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().

继续执行下面的页

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