基于MVC模式的Struts2框架在Web应用开发中的实现_邱晓荣_第1页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

信 息产业基于 MVC 模式的 Struts2 框架在 Web 应用开发中的实现邱晓荣(无锡职业技术学院电子与信息技术学院,江苏 无锡 214121 )目前, Java EE 平台得到了广泛地应用,其中基于 B/S 的 JavaWeb 应用已成为实现企业级信息管理系统的主流趋势 。传统的Java EE 框架( EJB+JSP+Servlet )由于自身缺陷在很大程度上限制了Web 应用的研发效率,而良好的轻量级 Java EE 框架不仅保留了传统框架良好的可扩展性 、可维护性 、健壮性 、安全性等特点,还具有灵活简单 、部署成本低 、无缝集成等优点 。随着多年的发展和改进,Struts 2 作为对经典 MVC 设计模式的一种具体实现,更加合理有效地实现了应用系统的高内聚和低耦合 。1 MVC 模式传统的 Web 应用主要由业务逻辑 、显示逻辑和控制逻辑三个模块构成,三大块之间的联系非常紧密 。随着技术的发展, Web 应用的可维护性和可扩展性正在变得越来越重要,而业务逻辑和显示逻辑的紧密相连,使得扩展非常困难 。MVC 模式的出现,很好的解决了上述问题 。MVC 是模型( Model ) 、视图( View ) 、控制器( Controller )三个词的缩写,在 Web 应用中一般分别用于实现业务逻辑 、显示逻辑和控制逻辑,它是 XeroxPARC 在 20 世纪 80 年代为编程语言 Smalltalk- 80 所设计的一种软件设计模式,至今已被广泛使用,并被推荐为 Sun 公司 Java EE 平台的设计模式 。MVC 模式强制性地把 Web 应用的输入 、处理和输出分开,并把 Web 应用分成三个核心模块:模型 、视图和控制器 。其中视图就是 Web 应用程序的界面,负责展示模型中的数据,向控制器发送使用者的动作,完成应用程序和使用者的交互,同时也允许控制器来选择所要显示的视图 。控制器体现了应用程序的行为,把使用者的操作转成对模型的更新,选择需显示的视图 。模型负责封装应用程序中的数据和业务逻辑,返回视图对数据的查询,将数据的变化通知给视图,用不同的方式实现模型接口,使应用程序通过不同的方式连接到不同的数据源 。MVC 模式的处理流程是:首先由控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图返回数据,并通过网页呈现给用户 。基于 B/S 的 Web 应用向软件开发人员提出了一些特有的挑战,最明显的就是客户机和服务器的无状态连接,这种无状态行为使得模型很难将更改通知视图 。在 Web 上,为了获得对应用程序状态的修改,需要修改标准的 MVC模式,通常称为 MVC Model 2 。2 Struts2 框架Struts 框架是 Apache 软件基金会下的一个开源项目,作为基于MVC 模式的 Web 框架,从 2001 年推出以来一直都得到了最广泛的应用 。但在使用过程中, Struts 的缺陷也逐渐显露出来 。在这种情况下, Struts2 在 2007 年上半年诞生了 。Struts2 整合了两个优秀的MVC 框架:传统的 Struts1.x 和 WebWork 。但 Struts2 实际上是WebWork2.2 的升级版,因为它使用的是 WebWork 的设计核心而不是 Struts1.x 的设计核心 。该框架由 FilterDispatcher (核心控制器) 、Action (业务逻辑控制器) 、Interceptor (拦截器) 、Result (结果类型)和视图等核心组件组成 。其中, FilterDispatcher 是 Struts2 的核心控制器,负责拦截所有客户端的请求,作为一个 Filter 通过 web.xml 文件被加载到 Web 应用中 。当客户端请求到达服务器时,核心控制器就会拦截该请求,然后根据请求的内容转发给相应的 Action 进行处理 。Action 是 Struts2 的业务逻辑控制器,负责具体处理客户端请求并将处理结果输出给客户端 。Action 在处理完客户端请求后会通过视图组件把处理结果显示出来,一般有两种情况:一种是 Action 向视图组件输出数据信息,然后由视图组件把这些数据信息显示出来,例如 Action 执行了查询数据库的操作,并把查询结果输出给视图组件,然后由视图组件把这些数据信息显示出来;另一种是 Ac-tion 并没有向视图组件输出数据信息,只是根据处理结果进行简单的页面跳转,例如在登录模块中当登录成功的时候就跳转到系统首页 index.jsp ,否则仍然重新跳转回登录页面 login.jsp 。3 系统的设计与实现3.1 构建视图:在 Struts2 框架中,视图的实现主要采用 JSP 技术,但 JSP 页面中不包含任何的脚本程序,只是单纯地传送数据 、接收和显示返回的数据 。3.2 构建模型:当前主流 Web 应用一般采用关系型数据库来存放数据,创建模型包括以下步骤:创建业务对象,创建数据库,把业务对象映射到数据库,测试业务对象是否可以被持久化到数据库 。3.3 构建控制器:在 Struts2 应用框架中,核心控制器是由Struts2 框架本身所提供,开发人员一般无须进行再次开发 。负责具体业务处理的 Action 类则是开发者开发实现的重点,在这些 Action对象中会进行所有的业务操作,业务操作处理完毕,由 Struts 的核心控制器负责转向转向或将处理结果返回给客户端 。3.4 配置 web.xml :该文件负责配置 Struts2 的核心控制器,只有加载了 FilterDispatcher , Web 应用才能获得整个 Struts2 框架所提供的服务 。3.5 配置 struts.xml :该文件是 Struts2 框架的配置文件,主要负责配置业务逻辑控制器 Action 以及自定义的拦截器等,是 Struts2各个组件之间的纽带 。FilterDispatcher 在拦截客户端请求后就是通过读取 struts.xml 文件来决定把客户端请求转发给相应的 Action 进行处理的 。4 结论目前, MVC 模式已被广泛地应用于 Web 应用开发之中,通过采用 Struts2 框架,可以开发高性能的 、面向事务的 Web 应用,可以简化 Web 应用程序的开发过程,提高开发效率,缩短开发周期 。Struts2带来的不仅仅是开发的便利性,它还从根本上为开发人员构思和构建 Web 应用程序提供了一种新的方式 。参考文献1 王然 . 基于 S2SH 的飞行器试验数据处理系统设计与实现 D. 哈尔滨:哈尔滨工业大学, 2011.2 伍晓莉 . 基于 S2SH 架构的商业银行非现场监管系统研究 D. 南京:南京航空航天大学, 2010.3 蒲子明,许勇,王黎 .Struts2+Hibernate+Spring 整合开发技术详解M. 北京:清华大学出版社, 2010.摘 要:本文介绍了 MVC 设计模式,研究分析了如何把 MVC 模式应用到 Web

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论