欢迎来到天天文库
浏览记录
ID:49423969
大小:1.59 MB
页数:17页
时间:2020-02-06
《MVC设计模式-.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、简单的MVC设计模式张道男2013年4月19日MVC模式概述MVC模式的优点简单的图书管理系统基于MVC的图书管理系统的运行总结模型-视图-控制器(Model-View-Controller,MVC)是XeroxPARC在20世纪发明的一种软件设计模式,在当今软件开发中广泛使用。其将Web应用的输入、输出和处理流程按照Model、View和Controller分成三层。视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XML、JSP和Excel。MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而
2、不包括在视图上的业务逻辑的处理。业务逻辑的处理由模型(Model)完成。MVC模式概述模型(Model):用于表示业务数据和实现业务逻辑。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。模型的设计可以说是MVC最主要的核心。控制器(Controller)用于完成流程控制,它接收来自视图层用户输入的数据并调用相应的模型进行处理,最后选择合适的视图去响应客户。1.各司其职,互不干涉在MVC模式中,三层各司其职,所以一旦哪一层需要发生变化,只需要更改相应层的代码,而不会影响到其它层的代码。2.有利于开发中的分工在MVC模式中
3、,由于系统按层分开,从而可以更好的实现开发的分工。页面设计人员可以只考虑如何将页面设计得更加美观和易于操作;对业务熟悉的人员可以更加专心地进行业务MVC模式的优点开发;而协调工作可以交给控制层开发人员完成。3.有利于组件的重组在MVC模式中,分层后更有利于组件的重组,如控制层可独立成为一个能用的组件,视图层也可做成通用的操作界面,大大提高了系统的灵活性。通过图书管理系统实现对数据库中图书信息的浏览、增加、修改、删除功能。方式一:完全用JSP的方式实现简单图书管理系统文件名描述index.jsp浏览所有图书信息,并提供添加、修改、和删除图书的超链接add.js
4、p添加图书信息,包含表单信息及处理请求信息edit.jsp修改图书信息的表单页面update.jsp处理修改图书信息页面del.jsp处理删除功能页面error.jspJDBC链接数据库跑出异常时,跳转到该页面完全采用JSP的方式能够实现系统。这样的做法相对简单,易于实现,开发效率还高。但是同时也带来了很多的问题。首先,由于每个页面都与数据库进行交互,当数据库发生变化时,每个页面的相关代码都必须进行相应的调整,大大增加了工作量,而且做的很多是毫无意义的重复性工作。其次,由于JSP页面中内嵌了大量的Java代码,当业务逻辑复杂时调试与排错变得异常困难,代码的可
5、维护性随之降低。最后,这种模式中显示、业务和流程混在一起,导致了在开发过程中角色定义不清和职责分配不明,给管理也带来了很大的麻烦。层文件名描述视图层list.jsp浏览所有图书信息,并提供添加、修改、和删除图书的超链接add.html添加图书信息页面edit.jsp编辑图书信息页面,该页面会显示已有的图书信息success.html操作成功提示页面,含有浏览图书信息的超链接Failure.html操作失败提示页面,含有返回的超链接控制层BookController.javaServlet,负责根据用户请求的URL调用不同的模型进行处理,最后选择不同视图相应用
6、户模型层DBBean.java连接数据库的JavaBeanBookInfo.java完成图书信息的读取、添加、修改和操作的JavaBean方式二:采用JSP+Servlet+JavaDean的MVC模式实现方法二采用JSP+Servlet+JavaDean的MVC模式实现图书管理,并实现了页面显示和逻辑的完全分离。模型层为JavaBean—实现数据的表示和业务逻辑。视图层为JSP—只负责显示功能。控制器层为Servlet—负责接收用户的请求,设置JavaBean属性,调用JavaBean完成业务处理,最后将结果处理交给JSP页面显示。具体的流程如下图所示:用
7、户首先通过浏览器发送http请求给控制器。控制器接收到请求后,会检查该请求,然后决定用什么业务逻辑来处理该请求,这时控制器会将该请求转发给一个相应的业务组件去处理。模型中包含该用户请求的所有业务组件,并且也执行用户所需要的全部数据存取。代表终端用户查询检索出的任何数据都被打包返回给控制器。控制器接收从模型返回的数据,并选择显示这些数据的相应的视图,并将视图以http响应的形式返回给用户。基于MVC的图书管理系统的运行JSP+Servlet+JavaDean是一种简单的MVC模式,存在着很多的问题和不足,在真正的开发中很少使用。而且由于基于MVC模式的系统开发
8、确实比简单的JSP开发困难得多,在开发中一般会使用现
此文档下载收益归作者所有