Struts2.0 第06章 标签.docVIP

  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文档。上传文档
查看更多
第六章 标签 在本章中,将向读者介绍进行Web应用开发时经常用到的一种技术:标签。通过本章的学习读者能够熟练的使用Struts2的数据标签,控制标签,UI标签。假定读者有基本的标签使用经验,首先将举例阐述如何定制一个标签,帮助大家回顾一下标签的原理,同时方便深入理解Struts2的标签。然后会详细分析Struts2的标签库,向读者介绍Struts2标签的使用方法,在这一章中,将Struts2标签分为数据标签,控制标签,UI标签三类,并分别详细阐述如何使用这些标签,最后在每一小部分都通过一个例子强化读者对于标签的认识。相信通过本章的学习,读者一定可以熟练的使用Struts2标签。 6.1 标签介绍 JSP诞生以后,程序员发现处理视图要比仅有Servlet的时候要方便多了,不必动辄输出out.println(html)。但是在获得便捷的同时又产生了新的问题,在JSP页面里面处理UI也不是什么愉快的事情,因为UI往往和业务逻辑纠缠在一块儿,因此用户不得不为了UI的设计在JSP的页面里面到处插入% %这样的代码行,这样带来的后果是最后页面代码揉合成一团,可读性降低,不仅程序员无法分清哪些是要处理的页面逻辑,连网页设计的美工也无法分清哪些是他们设计的UI。为了避免这种情况,标签被引入到JSP,从而降低Web项目开发与维护的难度,因为: 标签应用简单,对程序员和网页设计人员而言都很容易使用、易于理解。 所有的业务逻辑代码都放在的标签处理程序中,在代码维护时不需要对每个使用该业务逻辑代码的页面进行修改,而只需要修改标签的实现文件。 一个项目中设计的标签可以很容易的迁移到另外一个项目,可以大大提高了业务代码的重用性。 正因为标签的这些优势,标签产生之后很快得到开源社区的热烈响应。除了官方的JSP标签库,第三方的开源标签库也是层出不穷。各个开源框架都纷纷推出各自的标签库,Struts2标签库也是众多标签库中比较优秀的一种。 6.2 自定义标签 虽然标签库非常易于使用,不过建立一个标签库的内部实现机制还是颇复杂的,这复杂。现在,不必直接实现Tag接口,继承TagSupport类。TagSupport以有意义的默认方法实现Tag接口,因而使开发自定义标签更容易在默认情况下,TagSupport实现了doStartTag()以使它返回SKIP_BODY常量,表示将不对标签正文进行判断。此外,在默认情况下,doEndTag()方法返回EVAL_PAGE,它表示JSP运行时引擎应当对页面的其余部分进行判断。最后,TagSupport实现了release(),它设置pageContext及其父元素为null。TagSupport来实现Tag接口。 example.validateNumber package example; import javax.servlet.jsp.tagext.TagSupport; import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspWriter; /* 省略代码*/ public class validateNumber extends TagSupport{ public int doStartTag() throws JspException { //获得输出对象 JspWriter out = pageContext.getOut(); try{ //输出创建图像的标签 out.println(img src=\createImage\/); }catch (IOException ioe1){ ioe1.printStackTrace(); } return EVAL_BODY_INCLUDE ; } } 以上就是标签实现的正文部分,分析其代码也不难发现,它在标签的插入位置添加了一句HTML代码src img=”createImage”/其中createImage就是一个用来生成动态图像的Servlet,这里就不对它作过多的描述了。下面来看如何将该标签应用到JSP页面中。 Image.jsp %@ page language=java pageEncoding=ISO-8859-1% %@ taglib uri=Code prefix=html % !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN html head titleThis Page Illustrates you a simple TAG/title /head body html:codeThis Im

文档评论(0)

df829393 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档