论文部分内容阅读
本论文研究的主要内容是如何利用Struts框架和Ajax技术构建Web应用软件。采用的主要技术包括:UML统一建模语言、Struts框架、Ajax技术。论文首先对课题的背景和研究意义进行了介绍,然后对国内外汽车租赁行业现状进行了分析。其次,对基于UML语言的建模工具IBM Rational Rose、Microsoft Visio、PowerDesigner等进行了简介,对Ajax技术和Struts框架发展和现状进行了阐述;再次,论文通过对客户提出的功能需求进行了深入分析,设计了四个功能模块,即:基本数据维护模块、基本业务模块、数据库管理模块、信息查询模块。进而用UML统一建模语言建立了分析模型,使用Rational Rose设计出系统的用例图、类、时序图、状态图。在系统的设计模型中,对客户及员工设计类图、系统数据库等进行了规划。最后,通过该系统的功能实现,展望了Struts结构和Ajax技术的发展前景。最大化的重用、尽可能简单明了、最灵活的拓展性是该系统开发过程设计目标。通过深入研究各种MVC设计模式,开发者选用了成熟稳定的Struts框架作为系统的开发框架,提出了应用Struts框架开发MVC结构("模式-视图-控制器")软件的方案。Struts提供了一个实现MVC架构的高度自动化的方式。它的结构实现了MVC,并包括一个控制器Servlet、一组JSP页面和应用程序的商业逻辑。控制器将用户请求打包,并把它们导向架构中的其他对象。论文给出了Struts框架的三层结构的主要组件,视图层组件主要给出JSP文件和ActionForm Bean,控制层组件主要给出ActionServlet类和Action类,模型层组件主要给出描述业务模型的JavaBean类。Struts构架是围绕一个ActionMapping结构的。控制器用ActionMapping把HTTP消息形式的用户请求转换成应用程序的动作。ActionMapping指定请求的路径、计划处理请求的对象以及任何服务该请求需要的其它信息。ActionMapping创建了一个Action对象来处理请求。一旦Action对象完成了一个任务,它就通过在一个JSP页面上写结果来直接回应一个用户请求,或者它可以让一个应用程序流动到其它地方做回应。Struts是由Servlet、标记库、实用类库等构成,这些类包括控制程序流程的类、实现和执行程序事务逻辑的类。其中,ActionServlet类根据用户请求,调用相应的Action类实例进行处理。然后选择相应的JSP文件返回客户端;ActionForm类是模型中的数据Bean类。用来表示从View组件中输入的数据;Action类是模型中的逻辑Bean类,对它扩展后可以执行某一特定请求的业务逻辑;taglib组件代表标签库;ActionMapping类代表JRI模式和业务逻辑组件Action之间的映射。此外,Struts还包含了一个非常重要的配置文件Struts—config.xml,它包括关于Web应用程序的ActionMapping信息、JDBC数据源信息、ActionForm Bean信息和全局转发等。使用Struts框架可以将业务逻辑、控制和数据显示功能模块区分开来,应用程序功能划分很清晰,开发人员可以分别集中开发业务逻辑模块、程序控制模块和数据显示模块,不用担心三者之间的耦合问题。用户要求系统具有尽可能快的业务处理能力。这就对系统的设计提出了较为苛刻的设计要求。系统通过在客户端添加Ajax技术,能够使得客户端得到丰富的应用体验及交换操作,而用户不会感觉到有网页提交或刷新的过程,页面也不需要被重新加载,使web应用软件的用户得到很好的应用体验。论文提出了Ajax引擎在web应用软件开发中综合应用的方案。用户在与浏览器的交互过程中,可能触发一个被JavaScript捕获到的事件,比如说表单中某个输入框的onblur事件,然后由JavaScript创建一个XMLHttpRequest对象,并通过该对象异步地把请求发送到服务器端。这时,用户可以继续进行其它的操作,比如继续浏览当前页面,或者填写其他表单等等,而不必去等待服务器的响应。服务器端在接到请求后,通过服务器端程序处理并把结果返回,返回的结果被XMLHttpRequest捕获到并返回给JavaScript,再由JavaScript调用相应的DOM进行显示层的控制。使用Ajax后用户从感觉上几乎所有的操作都会很快响应没有页面重新加载的等待。最后,通过对系统的预定租车、车辆出租、还车结算等功能的测试,达到了设计预期目标,实现了基于Struts框架和Ajax技术的汽车租赁管理系统。