Struts应用中的开发标准(连载一) --转
Apache Struts是web应用程序前段也即web层的一个著名的开发框架。对于小型的程序,几乎没有价值对定义action类的方法和过程制定明确的标准。然而标准化的问题会随着应用程序复杂性的增加而愈显重要。当团队中开发人员增多时更是如此——标准化就变的至关重要。Struts中大多数的功能可以有许多不同的实现,如果没有标准,许多程序员参与同一个项目,将不可避免的导致系统花样百出,难以维护。
如你正在设法解决Struts应用程序架构的标准化问题,那么本文提供的以提高程序开发速度和质量的几点建议会对你有所帮助。
扩展Struts的Action类
每个action 类必须继承struts的Action 类,因此先创建自己的struts的Action的扩展类,再让其它action类继承自该自建的扩展类,是个不错的主意,这样这个扩展类就是应用程序的Action类,我们可以叫它MyAction,用它来完成不同的任务:
- 可以用来实现用户的登陆和验证,由于所有的action类都继承自MyAction因此可以很方便
的在一个地方完成验证功能。 - 可以把它作为各种实用功能的工具箱来设计。
- 可以用它来做日志和跟踪的作用。
我们可以通过实现一个用来显示什么时候进入和退出一个Action类的追踪功能来演示怎样扩展struts Action类,由于每个action 类都必须实现execute 方法,我们这个扩展的Action类可以从如下的代码开始:
有了这样的实现,每个action必须继承MyAction类,同时实现myExecute方法。通过System.out语句产生的追踪功能可以通过后面介绍的程序来展现。
当你创建MyAction类时,可以添加一个不错的实用方法doForward,用来代替通常的“return mapping.findForward()”语句,该语句会返回Null值,如果未发现转发的forward字符串,从而导致在浏览器窗口里显示空页面,没有提示信息,不友好。doForward方法会抛出一个异常,从而显示错误发生的原因。