05自定义标签.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
自定义标签 在JSP中自定义标签——JSP和XML的完美结合 ? 问题的提出:现在要显示所有学生的资料, 提出解决方案 传统方法: 在JSP里面写JDBC查询 在JavaBean中写JDBC查询,在JSP中 使用查询的结果 ? 新的方法:能否使用一个标签(类似于 html标签)嵌入到JSP文件中,让它自 动显示这些信息 ? 答案:能。技术基础:XML 一个标签的引用 bean:write name=“student”/ 前缀 标签名称 属性名称 属性值 至少需要让JSP文件做以下事情: 看到标签之后,执行相应的程序; 能够识别不同属性,知道不同属性的相应作用; 不同属性赋不同的值,应该有不同的反映 标签种类 ? 空标签,没有属性,也没有体 ? html:submit/ ? html:submit/html:submit ? 空体标签,有属性,没有体 ?bean:write name=“student” / ?bean:write name=“student”/bean:write ? 有属性有体标签: ? logic:iterate id=bookname=books ? bean:write name=book/ ? /logic:iterate 自定义标签的要素 标签处理程序(一个java文件,已经被编译) 使用不同的方法与对象来定义标签的行为,即认识 某属性的不同值能做不同的事情? 标签库描述符(TLD)文件(一个XML格式文件) 包含客户标签的描述性列表的XML文件,即识别不 同的属性能做不同的事情 ? JSP文件(为了嵌入自定义的标签) 包含标签以及表示内容的HTML代码 标签处理程序(一个java文件) ? 作用:包含类和方法的定义,定义标签的功能 ? 对于空体标签,需要继承: javax.servlet.jsp.tagext.TagSupport ? 对于有体标签,需要继承: javax.servlet.jsp.tagext.BodyTagSupport ? 以上两个类都实现 javax.servlet.jsp.tagext.Tag接口 ? Tag接口中的方法: – doStartTag():初始化标签的一些内容,如连数据库 – doEndTag():作一些善后工作,如关数据库 – release():释放这个标签对象 – doAfterBody():完成标签体求值之后调用 – doBeforeBody():开始标签体求值之前调用 标签处理程序(一个java文件) ? 一般,无体标签doStartTag()返回SKIP_BODY,让标签不要 对体求值,doEndTag()返回EVAL_PAGE,让标签后面的JSP 继续执行;有体标签doStartTag()返回EVAL_BODY_TAG,让 标签对体求值,doEndTag()返回EVAL_PAGE,让标签后面的 JSP继续执行; ???????????????????????????????????????????????????2? 对于标签里面的属性,类似于JavaBean中给它们编写get和 set方法 ? 一般情况下的标签处理程序包含以下函数: 构造函数:用于进行这个标签解释时的初始化,如联结数 据库 doStartTag():返回对这个标签的处理方法 doEndTag():作一些善后工作,如数据输出,关闭数据库等 各种属性的get,set函数 ? 最厉害的角色:pageContext保护成员 标签库描述符(TLD)文件(一个XML文件) ? TLD文件: – 为包含标签库描述的XML文件 – 包含库中所有客户标签的列表与描述 – 可大致分类为二部分:: ? ? 第一部分包含TLD 根标签或taglib标签 的子-元素 ? taglib标签内的第二部分包含tag标签元 素 ? 标签库描述符(TLD)文件(一个XML文件) 基本: ? ?xml version=1.0 encoding=UTF-8? ? !DOCTYPE taglib PUBLIC -//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN /j2ee/dtds/web- jsptaglibrary_1_1.dtd ? taglib ? tlibversion1.2/tlibversion ? jspversion1.1/jspversion ? shortnameStuTags/shortname ? uri外界访问的URI名称/uri ? /taglib 标签库描述符(TLD)文件(一个XML文件) tag ? name标签名称/name ? tagclass类路径/tagcl

文档评论(0)

精品报告 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档