版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第9章
MVC模式本章思维导图本章目标理解MVC体系结构了解Model1模式掌握MVC模式开发及应用MVC(Model-View-Controller)模式是一种软件体系结构,有三个组成部分:Model(模型)View(视图)Controller(控制器)MVC结构的每个部分具有各自的功能与作用,并以最少的耦合协同工作,从而提高应用的可扩展性和可维护性。MVC模式是交互式应用程序最为广泛使用的一种体系结构,该模式能够有效的将界面显示、流程控制、业务处理相分离,改变了传统的将输入、处理和输出功能集中在一个图形用户界面的结构,形成了多层次的软件商业应用架构。MVC模式MVC模式结构图MVC模式结构的三个组成部分代表了软件结构的三个层级:模型层、视图层、控制层。模型(Model)层模型层是应用系统的核心层,负责封装数据和业务操作。模型层可以分为数据模型和业务模型。数据模型用来对用户请求的数据和数据库查询的数据进行封装;业务模型用来对业务处理逻辑进行封装。控制器(Controller)将用户请求数据和业务处理逻辑交给相应的模型,视图(View)从模型中获取数据,模型发生改变时通知视图数据的更新。开发人员在后期对项目的业务逻辑维护时,只需要对模型层做更新、变动,而不需要牵扯到视图层,这样一来,即可将网页设计和程序处理完整的分离,又可使日后的维护更具弹性。视图(View)层视图层主要指与用户交互的界面,即应用程序的外观。这层主要被当作用户的操作接口,让用户输入数据和显示数据处理后的结果。用户通过视图输入数据,并将数据转交给控制器,控制器根据用户请求调用相应的数据模型和业务模型进行处理,然后根据处理结果选择合适的视图,视图再调用模型对结果数据进行显示,同时当模型更新数据时,视图也随之更新。控制(Controller)层控制层主要的工作就是控制整个系统处理的流程,其角色通常是介于视图层和模型层之间,进行数据传递和流程转向。控制层接收用户的请求和数据,然后做出判断将请求和数据交由哪个模型来处理,最后将结果交由视图来显示模型返回的数据。MVC模式结构在JavaWeb应用开发的发展过程中,先后经历了Model1和Model2两种应用结构模式。Model1模式是以JSP为主的开发模式;Model2模式即JavaWeb应用的MVC模式。JavaWeb开发模式在早期的JavaWeb开发中,由于在JSP网页很容易将业务逻辑代码(如:JavaBean)和流程控制代码(如:Scriptlet)与HTML代码相结合快速构建一套小型系统,因此JSP很快取代Servlet的地位,成为构建JavaWeb系统的主要语言,逐渐形成以JSP为主的Model1模式。Model1模式分为两种,一种是完全使用JSP来开发,一种是使用JSP+JavaBean的设计。Model1模式Model1完全使用JSP开发的模式结构图当用户发送一个请求到服务器端,完全由JSP来接受处理,并将执行结果响应到客户端。Model1模式Model1完全使用JSP这种模式的优点为:开发时间缩短,程序员无须编写额外的Servlet及JavaBean,只需专注开发JSP;小幅度修改非常容易,因为没有使用到Servlet及JavaBean,修改小幅度的程序代码时,无须重新编译。只使用JSP这种模式也存在许多缺点:程序可读性降低,因为程序代码与网页标签混合在一起,从而增加维护的难度;程序重复利用性降低,因为所有功能均编写在JSP中,往往会在不同JSP中使用相同功能,当业务逻辑需要修改时,就必须修改所有相关的JSP,造成较大维护成本。Model1
JSP模式优点Model1使用JSP+JavaBean的模式结构图相对于纯粹使用JSP开发应用程序,许多有经验的工程师都会将部分可重复利用的组件抽取出来写成JavaBean;当用户送来一个请求时,通过JSP调用JavaBean负责相关数据存取、逻辑运算等等的处理,最后将结果回传到JSP显示结果。Model1模式JSP+JavaBean这种模式的优点为:程序可读性增高,将复杂的程序代码写在JavaBean中,减少和网页标签混合的情况,清晰易读,也更易于维护;可重复利用率提高,由于通过JavaBean来封装重要的商业逻辑运算,不同的JSP可以调用许多共享性的组件,减少开发重复程序代码的工作,提高开发效率。JSP+JavaBean这种模式也存在一些缺点:缺乏流程控制,这是此种模式的最大缺点,缺少了MVC中的Contorller去控制相关的流程,每一个JSP都要验证请求的参数正确度、确认用户的身份权限、异常发生的处理,甚至还包括显示端的网页编码的设定。Model1JSP+JavaBean模式优点JavaWeb的Model2模式即基于MVC结构的设计模式。在Model2模式中,通过JavaBean、EJB等组件实现MVC的模型层;通过JSP实现MVC的视图层;通过Servlet实现MVC的控制层。Model2模式把业务处理、流程控制和显示界面分成不同的组件实现,使组件可以进行交互和重用来弥补Model1的不足。MVC模式Model2模式结构图Model2模式的优点:开发流程更为明确,使用Model2设计模式可以完全切开显示端与商业逻辑端的开发;核心的程序管控,由Controller控制整个流程,可以减少JSP需要编写许多条件判断逻辑及流程管控的代码;维护容易,不论是后端业务逻辑对象或前端的网页呈现,都通过控制中心来掌控,如果商业逻辑变更,可以轻易得修改Model端的程序,而不用去修改相关的JSP文件。Model2模式的缺点:学习时间较长;开发时间较长,因为需要设计MVC各对象彼此的数据交换格式与方法,会需要更多的时间在系统设计上。MVC模式的优点本章总结MVC模式是一种体系结构,MVC是Model-View-Controller的缩写,代表了它的三个组成部分:Model(模型)、View(视图)和Controller(控制器)。模型层是应用系统的核心层,负责封装数据处理和业务操作。视图层主要指与用户交互的界面,即应用程序的外观。控制层主要的工作就是控制整个系统处理的流程。Model1模式是以JSP为主的开发模式,Model2模式即JavaWeb应用的MVC模式。Model1模式分为两种:一种是完全使用JSP来开发,一种是使用JSP+JavaBean的设计。本章总结Model1模式进行快速及小型项目的应用开发具有非常大的优势,但这种模式开发的结果会造成未来维护难度加大的问题,非常不利于应用程序的扩展与更新。JavaWeb的Model2模式即基于MVC结构的设计模式
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年灰雀教学设计图标网站
- 九年级英语下Module3 Life now and then Unit3语言运用:多维比较视域下跨学科项目式复习导学案
- 七年级英语入门单元整合教学与素养导向训练
- 企业消费者行为大数据分析
- 企业跨平台营销活动整合方案
- 关于内部考核管理制度
- 道路养护信息共享方案
- 2025-2026学年小猪儿歌教案
- 公司品牌社交化传播方案
- 2025-2026学年纸板箱教案
- 工行个贷管理办法
- T-HNTI 018-2020 湘西黄金茶 绿茶
- 北京中学转学管理办法
- 统编版(2024)七年级下册道德与法治全册分课时同步练习题(含答案)
- 食堂承包管理难点及解决措施
- 2025年重庆市中考英语试卷真题(含标准答案及解析)
- 大桥连续刚构桥实施性施工组织设计
- 《当前保密工作面临的新形势、新任务》课件
- 国家职业技术技能标准 6-11-01-04 制冷工 人社厅发2018145号
- 承插型盘扣式钢管脚手架安全技术标准JGJT231-2021规范解读
- 2025年齐齐哈尔市高三语文3月一模考试卷附答案解析
评论
0/150
提交评论