快速业务通道

基于MVC设计模式的WEB应用框架研究 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-24

基于MVC设计模式的WEB应用框架研究

时间:2010-07-08 计算机与信息技术 王家骐 于海霞

摘要 MVC设计模式是基于J2EE的WEB应用开发的首选模式,当前许多流行的框架也都是基于MVC设计模式的。本文简要介绍了MVC设计模式和Struts框架,并提出了一种基于MVC模式的新型WEB应用开发框架——WebFramework,并对该框架的各个层次的组成、功能进行了详细的描述。

关键词 MVC设计模式;J2EE;框架;Struts

引言

随着开源软件的兴起,各种框架也纷纷出现,如Apache 的开源框架Struts就是典型的代表。在实际软件开发中运用这些框架,大大降低了J2EE开发的复杂度和难度,降低了开发成本。但是这些框架也有不足的地方,如难于掌握,配置复杂等等。本文研究的目的在于设计出一种简单易行的WEB开发框架——WebFramework,WebFramework结构清晰,易于理解,增加系统的可扩展性,可维护性,降低开发成本。

MVC设计模式

基于J2EE的WEB应用系统,多数都利用MVC模式来实现其体系结构。MVC(Model-View-Controller)是八十年代为编程语言Smalltalk-80发明的一种软件设计模式。MVC模式将交互式应用分成模型(Model)、视图(View)和控制器(Controller)三部分[1]。模型是指从现实世界中挖掘出来的对象模型,是应用逻辑的反映。模型封装了数据和对数据的操作,是实际进行数据处理的计算的地方。视图是应用和用户之间的接口,它负责将应用显现给用户和显示模型的状态。控制器负责视图和模型之间的交互,控制对用户输入的响应响应方式和流程,它主要负责两方面的动作:把用户的请求分发到相应的模型;将模型的改变及时反应到视图上。MVC将这些对象分离以提高灵活性和复用性。MVC模式的结构如图1所示:

基于MVC设计模式的WEB应用框架研究 - 编程入门网

图1 MVC设计模式的结构

Struts框架

Struts是Apache基金会Jakarta项目组的一个Open Source项目,它将Servlet2.2和JSP1.1标记用作实现的一部分,它由一组相互协作的类、servlet和JSP标记,组成一个可重用的系统设计。它能够很好地帮助Java开发者利用J2EE开发WEB应用。它将设计模式中“分离显示逻辑与业务逻辑”的能力发挥的淋漓尽致。因此,越来越多的大型的WEB应用项目的开发都纷纷采用Struts框架,或者借鉴Struts架构设计,进行基于MVC模式的应用系统的开发。

Struts的工作原理如图2所示:

基于MVC设计模式的WEB应用框架研究 - 编程入门网

图2 Struts 的工作原理

Struts的优点主要体现在两个方面:表单验证和页面导航。表单验证解决了请求数据的验证问题,增强了系统健壮性。而页面导航使系统的业务流程脉络清晰,系统各部分之间的联系可以通过配置文件反映出来,从而在一定程度上简化了系统以后的维护工作。

基于MVC设计模式的WEB应用框架研究(2)

时间:2010-07-08 计算机与信息技术 王家骐 于海霞

但是Struts也存在一些不足:

1)陡峭的学习曲线。Taglib是Struts的标记库,如果能灵活运用,能大提高开发效率,但对初学者来说,却需要一个持续学习的过程,增加了系统的开发成本。

2)增加了系统的复杂度。业务层和表现层之间的耦合度太高,使得开发人员无法专注于表现层的设计和实现。

3)没有对表单数据前端验证提出方案,不利于在大型系统中使用。

4)配置文件过于复杂繁索,随着系统规模的增大,struts-config.xml越来越庞大,维护也变得越来越困难。

WebFramework框架

针对Struts框架的以上不足之处,本文提出WebFramework框架,与Struts框架相比,WebFramework更简单易行,它通过简化表现层的设计,降低开发难度,节约开发成本;使用VO(Value Object)作为数据传递的方式,降低系统复杂度;运用简单的浏览器端表单字段数据验证,提高系统的运行效率;简化的配置文件,便于系统的维护。

设计目标

遵循J2EE规范,基于多层分布式应用软件

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号