- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
毕 业 论 文
题 目: 基于MVC模式的WEB开发框架研究
基于MVC模式的WEB开发框架研究
摘要: MVC设计模式是基于J2EE的Web应用开发的首选模式,当前许多流行的框架也都是基于MVC设计模式的。本文介绍了MVC设计模式的结构和优缺点,然后介绍了Sun公司提出的再Java Web开发领域的两种规范:JSP Model1和JSP Model2、接着介绍了Struts实现MVC的机制,并在此基础上提出了一种基于MVC模式的新型WEB应用开发框架——WebFramework,并对该框架的各个层次的组成、功能进行了详细的描述。
关键词: MVC设计模式;J2EE;Struts;WebFramework
TOC \o 1-3 \h \z \u
1引言 5
2 MVC概述 5
2.1 MVC设计模式 5
2.2 视图(View) 6
2.3 模型(Model) 7
2.4 控制器(Controller) 7
2.5 MVC处理过程 7
2.6 MVC的优点 8
2.7 MVC的不足 8
2.8 MVC的适用范围 9
3 JSP Model1和JSP Model2 9
3.1早期的Java Web开发 9
3.2 JSP Model1 10
3.3 JSP Model2 11
4 基于Struts 框架的Web系统的应用 11
4.1 Struts 如何实现MVC 模式 12
4.2 Struts 框架在Web 系统中的实现 12
4.3 设计模式中的模板方法模式的介绍 14
4.4 用模板方法模式实现程序控制流 14
4.5 Struts的优点 16
4.6 Struts的不足 16
5 WebFramework框架 16
5.1 设计目标 16
5.2 框架结构 17
5.3? 框架的配置文件 20
结论 21
致谢 21
参考文献 21
1引言
模型、视图和控制器即 MVC 模式是在Smalltalk-80 中使用的一种软件设计模式,这种模式在应用到Web 开发中,也就是SUN 公司的Model2 架构,在很多场合这两个词交互使用。既然说到了MVC 模式,我们不得不提Struts 框架体系结构,众所周知,它是MVC 的一种很好的实现。Struts 框架的核心是一个MVC 风格的控制器,搭起了模型和视图之间的支柱桥梁。
随着开源软件的兴起,各种框架也纷纷出现,在实际软件开发中运用这些框架,大大降低了J2EE开发的复杂度和难度,降低了开发成本。但是这些框架也有不足的地方,如难于掌握,配置复杂等等。本文研究的目的在于设计出一种简单易行的WEB开发框架——WebFramework,WebFramework结构清晰,易于理解,增加系统的可扩展性,可维护性,降低开发成本。
2 MVC概述
MVC模式是Model-View-Controller的缩写,中文翻译为模式-视图-控制器。MVC是Xerox PARC在20世纪80年代为编程语言SmallTalk-80发明的一种软件设计模式,至今已被广泛使用,最近几年被推荐为Sun公司J2EE平台的设计模式,受到越来越多的Web开发者的欢迎。
2.1 MVC设计模式
MVC是一种设计模式,她强制性地把应用程序的输入、处理和输出分开。MVC应用程序总是由这三个部分组成:模型、视图和控制器,它们分别担负不同的任务。图2-1 显示了这几个模块各自的功能以及它们的相互关系。
(控制器)
(控制器)
接受用户的请求
调用模型响应用户请求
选择视图显示响应结果
(模型)
代表应用程序状态
响应状态查询
处理业务流程
通知视图业务状态更新
(视图)
显示模型状态
接受数据更行请求
把用户输入数据传给控
制器
业务处理
选择视图
状态查询
通知数据更新
用户请求
方法调用
事件
Controller
Model
View
图2-1 MVC设计模式
Event(事件)导致Controller改变Model或View,或者同时改变两者。只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。类似的,只要Controller改变了View,View会从潜在的Model中获取数据来刷新自己。
2.2 视图(View)
视图时用户看到并与之交互的界面。视图向用户显示相关的数据,并能接受用户的输入数据,但是它并不进行任何实际的业务处理。视图可以向模型查询业务状态,但不能改变模型。视图还能接受模型发出的数据更新事件,从而对用户界面
文档评论(0)