JSP Tag Library

杜起运
2023-12-01
 

1. 组件:标签处理类;标签性质文件;jsp网页

2. TagSupport

1public int doStartTag()throws JspException

遇到<mytag>时会根据这个类中的程序内容对数据进行处理,并回传一个整数值:Tag.SKIP_BODY:本题内容被忽略。将控制权转交给doEndTag()

 Tag.EVAL_BODY_INCLUDE:本题内容正常执行显示,但不对本题内容作任何的运算或处理。

2public int doAfterBody() throws JspException

可重复处理本体内容。回传一个整数值:

Tag.SKIP_BODY:本题内容被忽略。将控制权转交给doEndTag()

 IterationTag.EVAL_BODY_Again本题内容重复执行,并再度调用doAfterBody(),直到回传SKIP_BODY为止。

3public doEndTag() throws JspException

自定义标签结束标签。回传一个整数值:

Tag.SKIP_PAGE:表示jsp网页的执行马上停止,所有在网页上的内容,包括jsp的程序和静态文件都应该被马上忽略,任何输出应该马上回传到用户浏览器上。

 Tag.EVAL_PAGE:表示jsp网页能够正常执行。

不管回传那个值 都应该最后调用release()方法。

4public void release()

将标签处理类中的所产生或是获得的所有资源都释放,并重新设定标签处理类的初始状态,然后这个标签处理类再释放至资源池中,等待下次使用。

3. BodyTagSupport

继承于TagSupport类,并实现BodyTag接口。可以处理本题内容的数据。

1public int doStartTag()throws JspException

遇到<mytag>时会根据这个类中的程序内容对数据进行处理,并回传一个整数值:Tag.SKIP_BODY:本题内容被忽略。将控制权转交给doEndTag()

BodyTag.EVAL_BODY_BUFFERED:表示标签的本题内容应该被处理,并且处理结果必须存储在BodyContent类中。

Tag.EVAL_BODY_INCLUDE:本题内容正常执行显示,但不对本题内容作任何的运算或处理。

为了处理标签的本题内容,首先要产生BodyContent类的实体,如同调用setBodyContentBodyContent b)一样,然后Contenter再调用doInitBody()方法,让用户能够新增初始值。

处理完标签的本题内容后,Contener会调用doAfterBody(),重复处理标签的本题内容。

2public int doAfterBody() throws JspException

可重复处理本体内容。回传一个整数值:

Tag.SKIP_BODY:本题内容被忽略。将控制权转交给doEndTag()

 IterationTag.EVAL_BODY_Again本题内容重复执行,并再度调用doAfterBody(),直到回传SKIP_BODY为止。

3public doEndTag() throws JspException

自定义标签结束标签。回传一个整数值:

Tag.SKIP_PAGE:表示jsp网页的执行马上停止,所有在网页上的内容,包括jsp的程序和静态文件都应该被马上忽略,任何输出应该马上回传到用户浏览器上。

 Tag.EVAL_PAGE:表示jsp网页能够正常执行。

不管回传那个值 都应该最后调用release()方法。

4public BodyContent getBodyContent()

 

5public void setBodyContent(BodyContent b)

6public void doInitBody() throws JspException

 

 类似资料:

相关阅读

相关文章

相关问答