北大青鸟J2EE课件 13_第1页
北大青鸟J2EE课件 13_第2页
北大青鸟J2EE课件 13_第3页
北大青鸟J2EE课件 13_第4页
北大青鸟J2EE课件 13_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

自定义标记第十三章回顾JSP标准动作<jsp:useBean>标记<jsp:getProperty>标记<jsp:setProperty>标记<jsp:forward>标记<jsp:include>标记2目标自定义标记TLD文件web.xml标记处理程序3自定义标记4-1可以创建自己的标记自定义动作是通过自定义标记来调用自定义标记提供了可重用、可维护及可移植的内容生成解决方案自定义标记的集合称为标记库4自定义标记4-2理解自定义标记表示和实现自定义标记库页面内容的动态生成属性的使用嵌套标记的使用现有JavaAPI的使用5自定义标记4-3自定义标记是显式设计的,用于在JSP页面中添加功能,包括页面内容(如HTML)的动态生成定义自定义标记的步骤:为标记开发标记处理程序和助手类在标记库描述文件

Web.xml中声明标记6自定义标记4-4web.xmlDemo.tld标记处理程序类Tagdemo.jsp7标记处理程序3-1执行与自定义标记关联的动作的Java对象必须实现javax.servlet.jsp.tagext包的Tag或BodyTag接口支持以下方法:setPageContext(),setParent()doStartTag(),doEndTag()andrelease()8标记处理程序3-2处理过程设置属性设置属性值doStartTagdoEndTag释放停止处理主体9标记处理程序3-3doStartTag()自定义标记开始时调用返回在标记接口中定义的int常量的EVAL_BODY_INCLUDE或SKIP_BODY,以决定是否处理标记的主题部分。doEndTag()在自定义标记结束时调用返回EVAL_PAGE或SKIP_PAGE。如果它返回EVAL_PAGE或SKIP_PAGE,以决定是否处理页面的其余部分。10标记库描述文件4-1标记库描述文件(TLD)是描述标记库的XML文档。JSP容器使用TLD来验证标记。TLD包含关于作为整体的库以及包含在库中的每个标记的信息。TLD还包含各种标记元素,每种元素均作了详细解释。

11标记库描述文件4-2标记元素的信息<tag><name>Greeting</name><tagclass>examples.servlets.Greeting</tagclass><bodycontent>empty</bodycontent><info>TagwithParameter</info></tag>12标记库描述文件4-3标记属性的信息<attribute><name>num1</name><required>true</required><rtexprvalue>false</rtexprvalue></attribute>13标记库描述文件4-4<?xmlversion="1.0"encoding="ISO-8859-1"?><!DOCTYPEtaglibPUBLIC"-//SunMicrosystems,Inc.//DTDJSPTagLibrary1.1//EN"""><taglib><tlibversion>1.0</tlibversion><jspversion>1.1</jspversion><shortname>mytag</shortname><uri></uri></taglib>14web.xml声明<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEweb-appPUBLIC"-//SunMicrosystems,Inc.//DTDWebApplication2.3//EN"""><web-app><taglib><taglib-uri>mycusttag</taglib-uri><taglib-location>/WEB-INF/mytag.tld</taglib-location></taglib></web-app>15在JSP中使用标记库<html><title>CustomJSPTagexample</title>

<%@tagliburi="mycusttag"prefix="mytag"%>Herecomesthetag:<p><bodybgcolor=wheat><i><mytag:Greeting/></i><p>Therewentthetag.</p></body></html>16标记处理程序示例importjava.io.*;importjavax.servlet.jsp.tagext.*;publicclassGreetingextendsTagSupport{publicintdoStartTag(){try{pageContext.getOut().print(“<b>Hello!</b>”);}catch(IOExceptione){e.printStackTrace();}

returnSKIP_BODY;}publicintdoEndTag(){try{pageContext.getOut().print(“<br>”);}catch(IOExceptione){e.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论