对MVC模式的理解

原创 2016年08月31日 15:08:40

MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式
Model(模型)表示应用程序核心(比如数据库记录列表)。
View(视图)显示数据(数据库记录)。
Controller(控制器)处理输入(写入数据库记录)。
MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。
Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。
  通常模型对象负责在数据库中存取数据。
View(视图)是应用程序中处理数据显示的部分。
  通常视图是依据模型数据创建的。
Controller(控制器)是应用程序中处理用户交互的部分。
  通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

特点:MVC的三个主体对应:数据封装、数据展现、数据控制
在动态web初期这个设计有效降低了开发和维护的复杂度。
MVC 分层有助于管理复杂的应用程序,因为你可以在一个时间内专门关注一个方面。例如,您可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。
MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。
它本身和具体框架没有必然联系,目前主流的设计风格和框架技术是对这个设计结构的扩展,出于持久化的需求,dao层扩展了数据封装和数据控制,而因为数据控制的复杂性,独立出service层做进一步的细化。

功能:model 其实就是DAO层 负责访问数据库,增删改查之类的操作,service调用model层,取得数据库的数据或者插入到数据库,service拿到数据后,然后通过控制层controler把数据分配给视图层view用户就会看到数据的展示,其实mvc核心是controler负责全局的调度分配

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

ThinkPHP中的MVC开发模式理解一

MVC这三个字母不愧博大精深,当我自以为要马上攻破php最后一道难关的时候,那时候的我好想就想错了,当我研究了一个半月之后,竟然发现其思想是那么的难以理解,直到现在我也不得不承认我只是对这个思想的认识...

理解iOS中的MVC设计模式

转自:http://liuzhichao.com/p/1379.html 模型-视图-控制器(Model-View-Controller,MVC)是Xerox PARC在20世纪80年代为编...

MVC模式基本理解

以下内容参考了《精通Java Web整合开发(JSP+Ajax+Struts+Hibernate)》和《自己动手写Struts——构建基于MVC的Web开发框架》里面的内容。 概述 MVC模式,即...
  • Feb13
  • Feb13
  • 2013年08月03日 11:17
  • 1267

快速理解MVC模式

MVC模式是Web应用中较为流行的一种架构模式。 MVC架构模式(Model、View、Controller):将一个应用分成业务模型、视图、控制器三部分来构建的思想被称为MVC架构模式。 三部分...

thinkphp mvc模式快速理解应用

最近看到有人问thinkphp MVC是怎么回事,之前学习php做网页的时候用过tp的框架,现在来分享下我对tp MVC的理解....
  • eyunzhu
  • eyunzhu
  • 2017年08月03日 12:41
  • 128

IOS MVC设计模式的理解

初学IOS开发,认识到理解MVC设计模式的重要性,转过来后添加了一些自己的理解,以供参考,如有错误,请各位给予纠正 (文中贴了几个重复的图,都一样的,为了看起来方便) 从两大方面来...

我理解的MVC开发模式

mvc开发模式

一个简单实例——快速理解前端web开发的MVC模式

MVC概论起初来之桌面应用开发。其实java的structs框架最能体现MVC框架:model模型是理解成服务器端的模块程序;view为发送给客服端的内容;control为servlet程序控制跳转和...
  • ifanyic
  • ifanyic
  • 2014年05月25日 18:07
  • 441

MVC模式理解

图1.   问题就出在以前所看过的文章上根本没有提过browser这层。导致我无法正确理解view的责任、controller的责任,以及两者明明是分层的,为什么却是循环依赖。   我将bro...
  • zaqiao
  • zaqiao
  • 2011年12月20日 20:44
  • 446
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:对MVC模式的理解
举报原因:
原因补充:

(最多只允许输入30个字)