View: (视图)显示数据对象的当前状态,即用户操作后需要被显示的状态,通常是依据MVC中的模型创建的。最通俗的解释就是视图是用户看到并与之交互的界面,实际应用当中视图大部分是由HTML元素组成的网页界面。
Controller: 用来处理用户的请求并进行转发调用。当用户单击页面中的超链接或者点击按钮提交表单时,控制器本身不做任何处理。它只是负责接收用户请求并根据请求决定哪一块模型构件去处理该请求,然后决定将处理后的结果再交给哪个视图来显示。
其中,Model(模型)、View(视图)和Controller(控制器)的关系如图1.1所示。
图 1.1 MVC
MVC特点
优点
1. 耦合性低
应用程序被分为三层,模型层与控制层、视图层之间相互分离。所以三者之间牵扯较少,各自有自己不同的任务需要负责。其中有任一模块变动,只需更改相应的模块,并不需要系统整体改动。例如,一个网页显示的排版变动,并不影响模型层与控制层,只需要改动视图模块即可。
2. 重用性高
多个视图可以共享一个模型,同一个Web应用程序可以通过多种方式进行访问应用程序。例如,考勤系统当中用户信息的新增和用户信息的刷新不同的画面都是针对一个数据模型操作的,这样减少了代码的书写量,最大化的重用代码。
3. 可文护性高
三个层次各司其职,三层之间联系少,哪一块出现问题可以就该模块进行修改,操作方便简单,便于Web应用文护和修改。
缺点
① 增加系统结构和实现的复杂性
对于简单的界面严格遵循MVC架构,就有些画蛇添足的弊端了。如果使得模型、视图与控制器层次分明,对于简单的应用不仅仅增加了结构设计的复杂性,更要使的其运行过程产生更多操作,这样就大大降低了程序运行效率。
② 视图对模型数据的访问效率低
视图会根据需要显示的内容,而采用模型当中的数据。这就造成视图对数据的需求不一样,一些数据未改变,却在后台多次被调用再显示。其实对于该未变化的数据没有必要多次访问,这样直接造成访问率低,程序运行复杂。
③ 视图与控制器联系紧密
虽然说视图与控制器是两个功能不同的模块,可它们之间却息息相关。控制器决定哪些数据显示在视图上,视图改变,其控制器也必须作出修改,才能传递视图需要的数据。
1.4.2 B/S框架
B/S结构,即Browser/Server(浏览器/服务器)结构,是WEB兴起后的一种新型网络结构模式,也是对传统的C/S结构的一种变化和改进。其中WEB浏览器是最主要的客户端应用软件。这种模式做到了极少数事务逻辑在前端实现,而是将大部分系统的主要事务逻辑核心部分集中实现在服务器上。这样大的简化了客户端电脑的工作量,减轻了整个系统今后文护与升级的成本与工作量,B/S构架的系统无须特别安装,只需要有WEB浏览器即可,这也大大降低了用户的使用成本。在Java这样跨平台语言出现之后,B/S架构管理软件优势更是突出,做到了方便、快捷、高效,深受开发人员的拥护。
B/S结构当中,客户端只要安装一个浏览器,如Netscape Navigator或Internet Explorer,而服务器则是安装Oracle、Sybase、Informix或SQL Server等数据库。为了向分布在网络上的许多服务器发送请求,用户只需要通过一台能上网的电脑登陆浏览器,服务器对浏览器发出的请求进行处理,然后将用户所需信息返回浏览器。整个过程当中数据的请求、加工、结果返回以及动态网页的生成、对数据库的访问以及应用程序的执行这些工作全部由Web Server完成,无需客户端做任何操作,大大减轻了客户端电脑的载荷。 Java+PostgreSQL考勤管理系统设计(4):http://www.youerw.com/jisuanji/lunwen_33177.html