`
akunamotata
  • 浏览: 373616 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

重载BodyTagSupport类的方法点滴

阅读更多

重载BodyTagSupport类的方法:

编写标签对应的实现类时,需要重载BodyTagSupport类几个方法:doStartTag(), setBodyContent(), doInitBody(), doAfterBody(), doEndTag();


他们执行顺序如下:

doStartTag()→doInitBody()→setBodyContent()→doAfterBody()→doEndTag()


doStartTag() 方法可返回EVAL_BODY_INCLUDE或SKIP_BODY


如果返回EVAL_BODY_INCLUDE 则继续执行;

如果返回SKIP_BODY 则接下来的doInitBody(),setBodyContent(), doAfterBody()三个方法不会被执行,
而直接执行doEndTag()方法。


setBodyContent() 方法用于设置标签体内容,如果在此之前要作一些初始化工作,则在doInitBody()方法中完成。 标签体内容执行完后,会调用doAfterBody()方法,此方法可返回EVAL_BODY_TAG , SKIP_BODY ,EVAL_PAGE SKIP_PAGE

 

如果返回EVAL_BODY_TAG 则会再次设置标签体内容,直到返回SKIP_BODY;

如果返回EVAL_PAGE 则标签体执行完后会继续执行JSP页面中接下来的部分;
如果返回SKIP_PAGE ,则JSP页面的后续内容将不再执行。


标签中静态常量:

EVAL_BODY_INCLUDE :告诉服务器正文的内容,并把这些内容送入输出流
SKIP_BODY :告诉服务器不要处理正文内容
EVAL_PAGE :让服务器继续执行页面
SKIP_PAGE :让服务器不要处理剩余的页面
EVAL_BODY_AGAIN :让服务器继续处理正文内容,只有doAfterBody方法可以返回
EVAL_BODY_BUFFERED :BodyTag接口的字段,在doStartTag()返回
EVAL_BODY_INCLUDE、SKIP_BODY一般由doStartTag()返回,而EVAL_PAPGE、SKIP_PAGE由doEndTag()返回。

分享到:
评论

相关推荐

    利用BodyTagSupport创建带标签体的自定义标签

    利用BodyTagSupport创建带标签体的自定义标签

    在jsp中使用自定义taglib

    这两个类提供了一些方法,负责jsp页面和你编写的类之间的交互,例如输入,输出。而这两个类是由jsp容器提供的,无须开发人员自己实现。换句话说,你只需把实现了业务逻辑的类继承TagSupport或者BodyTagSupport,再做...

    struts2自定义标签案例详解

    其实,开发自定义标签并不需要Struts2的支持,一般情况下,只需要继承javax.servlet.jsp.tagext.BodyTagSupport类,重写doStartTag,doEndTag等方法即可。这里在实现自定义标签时,继承的2个类分别是org.apache....

    jsp自定义标签中的困扰

    JSP自定义标签过程中会出现许多的问题,尤其是没有相应课题的专门书籍的时候.我在通过继承BodyTagSupport类来做标签的时候。出现了许多问题,我把这些问题归纳起来,希望能帮助到某些人。

    javax.servlet.jsp.tagext源码

    TagSupport SimpleTagSupport tagext javax servlet jsp Tag 标签

    jsp通过自定义标签库实现数据列表显示的方法

    本文实例讲述了jsp通过自定义标签库实现数据列表显示的方法。分享给大家供大家参考,具体如下: 1. 定义标签库类 UserListTag.java package com.yanek.cms.tag; import java.io.IOException; import java.util....

    自定义标签

    通过extends BodyTagSupport实现自定义标签的代码实例;通过implements Tag实现自定义标签的代码实例

    jsp java自定义标签 实现分页 当前位置标签

    通过BodyTagSupport实现了自定义的标签,主要实现功能为分页技术以及当前功能点所在位置。

    可伪可不伪的分页标签

    import javax.servlet.jsp.tagext.BodyTagSupport; public class FenyeTag extends BodyTagSupport { private static final long serialVersionUID = 1L; private String html; private String exname; ...

    李兴华 Java Web 开发实战经典_带源码_高清pdf 带书签 上

    12.7、BodyTagSupport类 12.8、TagExtraInfo类和VariableInfo类 12.9、使用BodyTagSupport开发迭代输出 12.10、简单标签 12.11、DynamicAttributes接口 12.12、本章摘要 第13章 标准标签库(JSTL) 13.1、...

    MLDN+李兴华+Java+Web开发实战经典.part3.rar )

    12.7、BodyTagSupport类 12.8、TagExtraInfo类和VariableInfo类 12.9、使用BodyTagSupport开发迭代输出 12.10、简单标签 12.11、DynamicAttributes接口 12.12、本章摘要 第13章 标准标签库(JSTL) ...

    李兴华 java_web开发实战经典 源码 完整版收集共享

    12.7、BodyTagSupport类 12.8、TagExtraInfo类和VariableInfo类 12.9、使用BodyTagSupport开发迭代输出 12.10、简单标签 12.11、DynamicAttributes接口 12.12、本章摘要 第13章 标准标签库(JSTL) 13.1、...

    李兴华 Java Web 开发实战经典_带源码_高清pdf 带书签 下

    12.7、BodyTagSupport类 12.8、TagExtraInfo类和VariableInfo类 12.9、使用BodyTagSupport开发迭代输出 12.10、简单标签 12.11、DynamicAttributes接口 12.12、本章摘要 第13章 标准标签库(JSTL) 13.1、...

    李兴华 Java Web 开发实战经典 高清扫描版Part3

    12.7、BodyTagSupport类 12.8、TagExtraInfo类和VariableInfo类 12.9、使用BodyTagSupport开发迭代输出 12.10、简单标签 12.11、DynamicAttributes接口 12.12、本章摘要 第13章 标准标签库(JSTL) 13.1、...

    李兴华Java Web开发实战经典.pdf (高清版) Part1

    12.7、BodyTagSupport类 12.8、TagExtraInfo类和VariableInfo类 12.9、使用BodyTagSupport开发迭代输出 12.10、简单标签 12.11、DynamicAttributes接口 12.12、本章摘要 第13章 标准标签库(JSTL) ...

    李兴华Java Web开发实战经典(高清版) Part2

    12.7、BodyTagSupport类 12.8、TagExtraInfo类和VariableInfo类 12.9、使用BodyTagSupport开发迭代输出 12.10、简单标签 12.11、DynamicAttributes接口 12.12、本章摘要 第13章 标准标签库(JSTL) ...

    java web 视频、电子书、源码(李兴华老师出版)

    12.7、BodyTagSupport类 12.8、TagExtraInfo类和VariableInfo类 12.9、使用BodyTagSupport开发迭代输出 12.10、简单标签 12.11、DynamicAttributes接口 12.12、本章摘要 第13章 标准标签库(JSTL) ...

    JSP自定义标签案例分析

    1. 标签处理类 public class MyReferer extends BodyTagSupport { private String site; private String back; public String getSite() { return site; } public void setSite(String site) { this.site = ...

    JSP/Servlet

    JavaBean是一個純綷的Java類別,它遵守一些規則與命名方式,它是一個公開(public)的類別,具有公開的setter與getter方法,在JSP中可以使用它將程式的邏輯處理與呈現部份分離。 簡介 JavaBean 深入 JavaBean ...

Global site tag (gtag.js) - Google Analytics