基于JAVA WEB中MVC模式的研究与应用
摘要:MVC(Model-View-Controller)设计模式是现代软件设计中一种非常重要的设计模式,也是WEB系统中常用的一种经典模式,它实现了界面显示与业务逻辑的分离。为了提高基于WEB系统中代码的可重复性、可维护性、可移植性和系统性能的稳定性,从数据库访问技术、XML技术和DAO设计模式的角度,提出一种MVC改进模式,并阐述了基于此模式进行开发的技术和原理。
关键词:MVC;Model;设计模式;Java Web
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2014)28-6668-04
1 MVC设计模式
MVC是一种经典的程序设计概念,此模式将应用程序分成3个部分,分别是模型层(Model)、视图层(View)、控制层(Controller),其关系如图1所示:
1.1 模型层(Model)
模型层是应用程序的核心部分,主要由JavaBean组件来充当,可以是一个实体对象或一种业务逻辑。负责表达和访问数据,执行商业逻辑和操作,维护应用程序状态。在MVC 模型中,它控制视图的表现结果。它采用面向对象的方法, 将问题领域中的对象抽象为应用程序对象。在这些抽象的对象中封装了对象的属性和这些对象所隐含的逻辑。模型可以接收来自视图的查询并做出响应,在模型的数据变化的时候,它将通知视图并提供后者访问自身状态的能力,视图将根据模型的变化来更新自己,同时控制器也可以访问模型的功能函数以完成相关的任务[1] 。
1.2 视图层(View)
视图层提供应用程序与用户之间的交互界面。它从模型中得到数据并按要求显示出来,当模型中的数据发生变化时,视图从模型中得到通知自动更新视图;它也可以将用户输入的信息传送给控制器。在MVC模式中,这一层并不包含任何的业务逻辑,仅仅提供一种与用户交互的视图,在Web应用中有JSP、HTML界面充当。
1.3 控制层(Controller)
控制层用于对程序中的请求进行控制,起到一种宏观调控的作用,它可以通知容器选择什么样的视图、什么样的模型组件,在Web应用中由Servlet充当。
2 基于JSP的MVC设计模式
JSP(Java Server Pages)是由Sun公司倡导、许多公司参与建立的动态网页技术标准。它在HTML代码中嵌入Java代码片段(Scriptlet)和JSP标签,构成JSP网页。在接收到用户请求时,服务器会处理Java代码片段,然后生成处理结果的HTML页面返回给客户端,客户端的浏览器将呈现最终的页面效果。JSP页面负责数据显示、业务逻辑、页面控制等所有的工作,这给Web设计带来了强耦合,维护困难,开发人员分工不明确,程序处理逻辑发杂等一系列问题。为了解决这种问题,Sun公司制定了两种设计模式,模式一(Model1)和模式二(Model2)。Model1设计模式中,主要分两层,视图层和模型层。图2称之为模式一,虽然模式一实现了页面显示和业务逻辑的分离,但是在JSP页面中不仅需要编写显示,而且很多业务逻辑、流程控制和调用JavaBean的程序代码都出现在JSP页面中,当业务逻辑非常复杂时,大量的内嵌代码会使得整个页面程序变得异常复杂,使整个项目再维护的时候显得非常困难。采用Model1模式开发小型项目非常的方便,每组页面实现一个功能,当需要对某个功能进行修改时,需要修改很多地方,这样不利用功能的扩展和更新。
为了解决模式一种的紧耦合、复用性差、维护成本高的缺点,此时提出了Model2模式,如图3所示。该图表示的是一种把JSP与Servlets联合使用来实现动态内容服务的方法,即 MVC 模式。它可以很好地表达用户与系统的交互模式以及整个系统的程序架构模式。在该模式中,JSP充当视图层,主要负责视图的显示servlet充当控制层,控制分发用户的请求,根据用户的请求,调用相应的业务Bean,并将结果返回给适当的页面进行显示,JavaBean充当模型层,主要负责业务逻辑的实现,因此在构建 Web 应用,采用Model2模式具有显著的优势。
3 改进的MVC模式
期刊库(http://www.zgqkk.com),是一个专门从事期刊推广、投稿辅导的网站。
本站提供如何投稿辅导,寻求投稿辅导合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。
【免责声明】本文仅代表作者本人观点,与投稿辅导_期刊发表_中国期刊库专业期刊网站无关。投稿辅导_期刊发表_中国期刊库专业期刊网站站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。
投稿辅导服务咨询与期刊合作加盟
陆老师联系QQ: 913775405(普刊)
蒋老师联系QQ: 867306987(核心)
刘老师联系QQ: 271374912(核心)
联系电话:18015016272
17327192284
投稿辅导投稿邮箱:zgqkk365@126.com
期刊推荐
- 《课程教育研究》 旬刊 国家级
- 《网络空间安全》(信息安全与技术)月刊 国
- 《价值工程》旬刊 国家级 科技统计源期刊
- 《高教论坛》 月刊 省级
- 《法制与社会》旬刊 省级
- 《中国教育学刊》月刊 14版北大核心
- 《语文建设》 旬刊 14版北大核心
- 《中国绿色画报》 月刊 国家级
- 《社科纵横》季刊 社科类优秀期刊
- 《求索》月刊 14版北大核心期刊
- 《财会月刊》旬刊 14版北大核心
- 《艺术品鉴》 月刊 省级
- 《中华建设》月刊 国家级 建设类优秀期刊
- 《教学与管理》旬刊 北大核心
- 《当代经济》 旬刊 省级
- 《新课程研究》旬刊 省级 教育类优秀学术期
- 《文教资料》 旬刊 省级
- 《学术界》 月刊 双核心
- 《吉林教育》旬刊 省级 教育类学术期刊
- 《中国农业资源与区划》 月刊 14版北大核心
- 《继续教育研究》月刊 北大核心期刊
- 《财经界(学术版)》半月刊 国家级
- 《电影评介》半月刊 14版北大核心
- 《公路交通科技》 月刊 北大核心
- 《新闻传播》月刊 省级 新闻类优秀期刊