相信在接触MVC时大家其实对MVC都不是很了解,甚至还会把MVC与三层架构混为一谈。接下来我说一下我的浅见,也许会有不对之处不要见怪。
一、MVC
由百度百科便可知:MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式。其实严格来说,我们的本地数据库系统是用不到MVC模式的。
MVC分为模型层、视图层、控制器:
- Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。
- View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。
- Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
MVC三个部分的工作:
- 视图
- 视图是用户看到并与之交互的界面。MVC好处是它能为应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。
- 模型
- 模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。
- 控制器
- 控制器接受用户的输入并调用模型和视图去完成用户的需求,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。
所以Controller只是一个控制器,它的作用也只是接收用户指令,并传达给模型层,以及从模型层中获取数据,发送到视图层中。而Model 模型层才是负责业务处理的并且还负责与数据库的交互。