第9章 自定义标签的开发

第9章 自定义标签的开发

ID:4149964

大小:700.04 KB

页数:62页

时间:2017-11-29

第9章 自定义标签的开发_第1页
第9章 自定义标签的开发_第2页
第9章 自定义标签的开发_第3页
第9章 自定义标签的开发_第4页
第9章 自定义标签的开发_第5页
资源描述:

《第9章 自定义标签的开发》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、JavaWeb编程技术第9章自定义标签的开发9.1简单标签的开发9.2理解TLD文件9.3几种类型标签的开发标签与标签嵌套

2、9.1简单标签的开发9.1.1标签扩展API9.1.2自定义标签的开发步骤9.1.3SimpleTag接口及其生命周期9.1.4SimpleTagSupport类9.1.1标签扩展API在JSP页面中可以使用两类自定义标签。•一类是

3、简单(simple)的自定义标签,•一类是传统(classic)的自定义标签。为了开发自定义标签,Sun提供了一些接口和类,它们称为标签扩展API•javax.servlet.jsp.tagext包•javax.servlet.jsp包如图9.1给出了所有标签扩展API的层次结构。9.1.1标签扩展APIJspTagSimpleTagTagSimpleTagSupportIterationTagTagSupportBodyTagBodyTagSupport标签处理器类还要使用到异常类,定义在javax.servlet.jsp

4、包中。•JspException–简单标签的doTag()方法和传统标签的有关方法都抛出JspException异常•JspTagException–JspTagException扩展了JspException。9.1.2自定义标签的开发步骤创建和使用自定义标签一般包含下面3个步骤:1.创建标签处理类(taghandler);2.创建标签库描述文件(TLD);3.在JSP文件中导入标签库和使用标签。1.创建标签处理类标签处理类是实现某个标签接口或继承某个标签类的实现类,程序实现了SimpleTag接口.程序9.1HelloT

5、ag.java要正确编译该文件,必须将Tomcat安装目录中的libjsp-api.jar文件添加到classpath路径中。2.创建标签库描述文件•标签库描述文件(TagLibraryDescriptor,简称TLD)是XML格式的文件,其扩展名一般为.tld。TLD文件主要用来定义可以使用哪些标签以及与这些标签的处理类的对应关系等。标签库描述文件:sampleLib.tldTLD文件一般存放在Web应用程序的/WEB-INF目录或其子目录下3.在JSP页面中使用标签在JSP页面要使用自定义标签,需要通过

6、ib>指令声明自定义标签的前缀和标签库的URI,格式如下所示:<%@taglibprefix=“demo"uri="http://www.mydomain.com/sample"%><%@pagecontentType="text/html"%><%@taglibprefix="test"uri="http://www.mydomain.com/sample"%>

HelloTagExample


7、执行该页面9.1.3SimpleTag接口及其生命周期SimpleTag接口中定义了生存周期方法。1.SimpleTag接口的方法•publicvoidsetJspContext(JspContextpc)•publicvoidsetParent(JspTagparent)•publicvoidsetJspBody(JspFragmentjspBody)•publicJspTaggetParent()•publicvoiddoTag()throwsJspException,IOException2.SimpleTag

8、标签的生命周期阶段当容器在JSP页面中遇到自定义标签时,它将加载标签处理类并创建一个实例,然后调用标签类的生命周期方法。(1)调用setJspContext()方法•Web容器为该方法传递一个JspContext类的实例,可将该实例保存到一个实例

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。