JakartaStruts应用的七个经验.pdfVIP

  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文档。上传文档
查看更多
JakartaStruts应用的七个经验.pdf

Jakarta Struts应用的七个经验 2002-12-03 · ·原作者Chuck Cavaness 编译 邱文宇 ··yesky 编者按:本文叙述了作者在运用Struts过程中来之不易的若干经验和心得。如果 你是jsp和servlet开发Web应用的Java程序员,并且也正在考虑采用基于Struts的 构建方法的话,那么你会在这里发现很多颇有见地同时也很有价值的信息。 1. 只在必要的时候才考虑扩展Struts框架 一个好的framework有很多优点,首先,它必须能够满足用户的可预见的需求。 为此 Struts为Web 应用提供了一个通用的架构,这样开发人员可以把精力集中在如 何解决实际业务问题上。其次,一个好的framework还必须能够在适当的地方提供 扩展接口,以便应用程序能扩展该框架来更好的适应使用者的实际需要。 如果Struts framework在任何场合,任何项目中都能很好的满足需求,那真是 太棒了。但是实际上,没有一个框架声称能做到这一点。一定会有一些特定的应用需 求是框架的开发者们无法预见到的。因此,最好的办法就是提供足够的扩展接口,使 得开发工程师能够调整struts来更好的符合他们的特殊要求。 在Struts framework中有很多地方可供扩展和定制。几乎所有的配置类都能被 替换为某个用户定制的版本,这只要简单的修改一下Struts的配置文件就可以做到。 其他组件如ActionServlet和 RequestProcessor 也能用自定义的版本代替. 甚至连Struts 1.1里才有的新特性也是按照扩展的原则来设计的。例如,在异常处理 机制中就允许用户定制异常处理的句柄,以便更好的对应用系统发生的错误做出响 应。 作为框架的这种可调整特性在它更适合你的应用的同时也在很大的程度上影响 了项目开发的效果。首先,由于您的应用是基于一个现有的成熟的、稳定的 framework如Struts,测试过程中发现的错误数量将会大大减少,同时也能缩短开 发时间和减少资源的投入。因为你不再需要投入开发力量用于编写基础框架的代码 了。 然而, 实现更多的功能是要花费更大的代价的。我们必须小心避免不必要的滥用 扩展性能, Struts是由核心包加上很多工具包构成的,它们已经提供了很多已经实 现的功能。因此不要盲目的扩展Struts框架,要先确定能不能采用其他方法使用现有 的功能来实现。在决定编写扩展代码前务必要确认Struts的确没有实现你要的功能。 否则重复的功能会导致混乱将来还得花费额外的精力清除它。 2. 使用异常处理声明 要定义应用程序的逻辑流程,成熟的经验是推荐在代码之外,用配置的方法来实 现,而不是写死在程序代码中的。在J2EE中,这样的例子比比皆是。从实现EJB的安 全性和事务性行为到描述JMS消息和目的地之间的关系,很多运行时的处理流程都是 可以在程序之外定义的。 Struts 创建者从一开始就采用这种方法,通过配置Struts的配置文件来定制应 用系统运行时的各个方面。这一点在版本1.1的新特性上得到延续,包括新的异常处 理功能。在Struts framework以前的版本中,开发人员不得不自己处理Struts应用 中发生的错误情况。在最新的版本中,情况大大的改观了,Struts Framework提供 了内置的一个称为 ExceptionHandler 的类,用于系统缺省处理action类运行中产 生的错误。这也是在上一个技巧中我们提到的framework许多可扩展接口之一。 Struts缺省的 ExceptionHandler类会生成一个ActionError对象并保存在适 当的范围(scope)对象中。这样就允许JSP页面使用错误类来提醒用户出现什么问 题。如果你认为这不能满足你的需求,那么可以很方便的实现你自己的 ExcepionHandler类。 具体定制异常处理的方法和机制 要定制自己的异常处理机制,第一步是继承 org.apache.struts.action.ExceptionHandler类。这个类有2个方法可以覆盖,一 个是excute()另外一个是storeException(). 在多数情况下,只需要覆盖其中的 excute()方法。下面是ExceptionHandler类的excute()方法声明: 正如你看到的,该方法有好几个参数,其中包括原始的异常。方法返回一个 ActionForwa

文档评论(0)

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

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

1亿VIP精品文档

相关文档