RSS
热门关键字:  java  Ajax  JSP  JSF  Struts
当前位置 : 首页>JSP>列表

JSP自定义标签由浅到深详细讲解(一)

来源: 作者: 时间:2007-10-10 点击:

 

2.在JSP中使用标签库标签

3.Web容器根据第二个步骤中的prefix,获得第一个步骤中声明的taglib的uri属性值

4.Web容器根据uri属性在web.xml找到对应的元素 5.从元素中获得对应的元素的值 6.Web容器根据元素的值从WEB-INF/目录下找到对应的.tld文件 7.从.tld文件中找到与tagname对应的元素 8.凑元素中获得对应的元素的值 9.Web容器根据元素的值创建相应的tag handle class的实例 10. Web容器调用这个实例的doStartTag/doEndTag方法完成相应的处理

 

四、创建和使用一个Tag Library的基本步骤:

 

1.创建标签的处理类(Tag Handler Class)

 

2.创建标签库描述文件(Tag Library Descrptor File)

 

3.在web.xml文件中配置元素 4.在JSP文件中引人标签库

 

五、TagSupport类简介:

 

1.处理标签的类必须扩展javax.servlet.jsp.TagSupport.

 

2.TagSupport类的主要属性:

 

A.parent属性:代表嵌套了当前标签的上层标签的处理类

 

B.pageContex属性:代表Web应用中的javax.servlet.jsp.PageContext对象

 

3.JSP容器在调用doStartTag或者doEndTag方法前,会先调用setPageContext和setParent方法,设置pageContext和parent。因此在标签处理类中可以直接访问pageContext变量

 

4.在TagSupport的构造方法中不能访问pageContext成员变量,因为此时JSP容器还没有调用

 

setPageContext方法对pageContext进行初始化

 

六、TagSupport处理标签的方法:

 

1.TagSupport类提供了两个处理标签的方法:

 

public int doStartTag() throws JspException

 

public int doEndTag() throws JspException

 

2.doStartTag:但JSP容器遇到自定义标签的起始标志,就会调用doStartTag()方法。

 

doStartTag()方法返回一个整数值,用来决定程序的后续流程。

 

A.Tag.SKIP_BODY:表示?>…之间的内容被忽略

 

B.Tag.EVAL_BODY_INCLUDE:表示标签之间的内容被正常执行

 

3.doEndTag:但JSP容器遇到自定义标签的结束标志,就会调用doEndTag()方法。doEndTag()方法也返回一个整数值,用来决定程序后续流程。

 

A.Tag.SKIP_PAGE:表示立刻停止执行网页,网页上未处理的静态内容和JSP程序均被忽略任何已有的输出内容立刻返回到客户的浏览器上。

 

B.Tag_EVAL_PAGE:表示按照正常的流程继续执行JSP网页

 

七、用户自定义的标签属性:

 

如果在标签中还包含了自定义的属性,那么在标签处理类中应该将这个属性作为成员变量,并且分别提供设置和读取属性的方法。

 

八、创建标签处理类的步骤:

共3页: 上一页 [1] 2 [3] 下一页
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册