- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第18章
JSP 自定义标签
本课教学内容
认识自定义标签
开发自定义标签
配置自定义标签
使用自定义标签
开发具有属性的标签
开发自定义体标签
认识自定义标签
什么是 JSP 标签
了解标签的结构,在如下标签中:
jsp:forward page=page.jsp标签体/jsp:forward
jsp:标签前缀;前缀一般在使用时定义,但也可以由系统定义。
forward:标签名称;决定了标签调用的程序。
page:属性名称;一个标签可以定义多个属性。
page.jsp:page 属性的值
为什么需要自定义标签
自定义标签有很多的优势:
在程序开发中,自定义标签很有利于团队合作开发,让美工能够更方便地修改程序,更利于页面的设计
为什么需要自定义标签
自定义标签有很多的优势:
方面后期的维护和修改。自定义标签可以将特定的功能统一起来,比如所有学生的显示,后期如果需要修改的话,仅仅需要对自定义标签进行修改
很好地避免了 JSP 页面代码的冗余,使页面代码更加的规范美观
自定义标签介绍
标签的本质是,系统发现标签名称之后,调用相应的标签处理程序,所以,首先必须面临标签处理程序的开发
要实现自定义标签必须完成 3 个步骤:
开发自定义标签
配置自定义标签
使用自定义标签
开发自定义标签
确定标签父类
开发出来的标签在 JSP 上使用方法为:s:showStudents /。一般情况下,可以通过继承 javax.servlet.jsp.tagext.TagSupport 来实现标签开发
开发自定义标签
确定标签父类
不直接使用 out 对象是因为本类以及它的所有父类都没有 out 对象。之所以能够直接使用 pageContext 对象是因为 pageContext 是 TagSupport 中的一个 protected 成员,继承过来之后可以直接使用
开发自定义标签
pageContext 属性可以获取所有的 JSP 隐含对象,如:
pageContext.getRequest();获得 request 对象
pageContext.getResponse();获得 response 对象
pageContext.getSession();获得 session 对象
pageContext.getServletContext();获得 application 对象
配置自定义标签
为什么要需要配置自定义标签
自定义标签的本质就是 Java 代码,是通过一个配置文件文件将标签与 Java代码联系起来的。为了使 Java 文件与标签相对应,就需要对自定义标签进行配置
编写标签库定义文件
首先创建一个 file 文件,注意,扩展名一定要叫 tld,该文件一定要放在 WEB-INF 下
然后将此 file 文件命名为 student.tld(可以任意命名).即成功创建 tld 文件
使用自定义标签
导入标签库
导入标签库比较简单,只要在 JSP 页面中加入代码即可:
%@ taglib prefix=f uri=student%
其中 prefix 数据表示的是前缀,可以自己任意命名。uri 必须与 tld 文件中的 uri 相同
使用标签
具体代码示例见课本
开发具有属性的标签
为什么需要属性
前面的自定义标签已经很轻松地解决了把所有的学生显示出来的功能,但是现在需求进行了修改,客户希望通过学生性别查询学生。标签属性属性可以理解为向 Java 代码中传递一个参数
开发属性
属性的开发非常简单,只需要将需要设置的属性,编写在标签处理程序内,并为其编写 setter 和 getter 方法即可
具体代码示例见课本
使用属性
具体代码示例见课本
使用默认属性
具体代码示例见课本
设置表达式属性
具体代码示例见课本
开发自定义体标签
在使用 JSP 元素时,会注意到标签之间可以添加内容,也就是说标签体不为空,这就是 体标签。
编写自定义体标签,需要继承 javax.servlet.jsp.tagext.BodyTagSupport,除了需要实现前面空体标签中的内容外,还需要重写 doAfterBody()函数,表示处理标签体内的内容
开发自定义体标签
注意
不能用 pageContext.getOut()来获得 out 对象,否则体内容无法打印。然后在 student.tld 中配置 BodyTag:
tag
namebody/name
tag-classtags.BodyTag/tag-class
/tag
本章结束
本章总结
认识自定义标签
开发自定义标签
配置自定义标签
使用自定义标签
开发具有属性的标签
开发自定义体标签
上机习题
您可能关注的文档
- 2014年经济生活一轮复习课件校本经济生活第八课课件.ppt
- 2014年经济生活一轮复习课件校本经济生活第二课复习课件.ppt
- 2014年经济生活一轮复习课件校本经济生活第九课课件.ppt
- 2014-09-04城市规划与管理城市规划与规划管理体系-赵明.ppt
- 2014年经济生活一轮复习课件校本经济生活第六课课件.ppt
- 2014-09-04城市经济学城市经济学讲义.ppt
- 2014年经济生活一轮复习课件校本经济生活第七课课件.ppt
- 2014年经济生活一轮复习课件校本经济生活第三课复习课件.ppt
- 2014年经济生活一轮复习课件校本经济生活第十课课件.ppt
- 2014-09-04城市经济学城市经济学课件.ppt
文档评论(0)