模式-视图-控制器(Model-View-Controller,MVC)是一种目前广泛流行的软件设计架构模式。
视图(View)代表用户交互页面。MVC设计模式对于视图的处理,仅限于视图中数据的采集与处理以及用户请求的处理,而不包括对视图中业务流程的处理。
模型(Model)在Web应用中,模型表示业务数据与业务逻辑,它是Web应用的主题部分,视图中的业务数据由模型提供。
控制器(Controller)控制器是视图与模型之间的纽带。控制器将视图接收的数据交给相应的模型去处理,将模型的返回数据交给相应的视图去显示。
提示:使用MVC设计模式开发Web应用,关键的一点就是让一个模型为多个视图提供业务数据,这样可以提高代码的可重用性与可读性,也给Web应用后期的维护带来方便。
MVC处理过程的流程:
用户--1.发送请求-->视图--2.转发请求-->控制器--3.调用模型-->模型(模型中处理业务)--4.返回数据-->控制器--5.选择视图-->视图
MVC的优点
1.低耦合性:视图层、模型层、和控制层分离,这样就允许在不重新编译模型和控制器代码的情况下更改视图层代码。同样,改变一个Web应用的业务流程或者业务规则时,只需要改变MVC的模型层即可。
2.高重用性:多个视图可以对应一个模型,这样可以减少代码的重复性及代码的维护量,一旦模型发生改变,也易于维护。
3.可适用性:随着技术不断进步,现在需要用越来越多的方式来访问应用程序。MVC模式允许使用各种不同的表现层技术(如jsp、Velocity等)来访问同一个服务端的代码。
4.可维护性:MVC的3个模块层相分离,使得Web应用更易于维护和修改。