对MVC的理解
摘要:本文主要谈到了对PHP开发中MVC开发模式的理解。
当用户通过url触发命令时,例如url=http://control.blog.sina.com.cn/admin/article/article_add,这意味着进入bolg项目中的admin.php文件,调用框架文件如ThinkPHP框架,找到article.class.php文件,其中article为一个controller类,继承于controller(TP3.2),article_add为方法,把用户通过url传过来的参数进行处理。这就是控制层!
当方法把穿过来的参数如db_blog,找到数据库中的那堆叫blog的表。通过db_Username,找到blog中的Username表,这就是业务层。但在MVC中,常常把业务层和模型层相合并。
传说中的模型层实际上就是对数据库的增删查改。
2014-02-25
PS:MVC,M指Model层,也就是模型层,最初的设计是程序需要操作的数据或信息,也就是将一些通用的涉及和数据库相关的操作写在model层里面。比如将对数据库的查询写在里面。但是,并不一定要写在里面,在实际的开发中,为了方便,可以写在control层,只要是能对数据库有效的操作,效果是一样的。这样说,并不意味着model层是多余的,你可以将经常用到的操作封装在里面,比如,query查询可以添加utf-8转gbk操作,等等。
V指View视图层。主要指我们送到Web浏览器的最终结果——比如我们的脚本生成的HTML。当说到视图时,很多人想到的是模版,所谓的模版就是别人做好的html页面,你把模版套进我们的系统就可以了。一般只要往里面添加标签,控制层把变量丢到视图层,其中的URL解析规格根据每个系统来设定。标签就是把丢过来的变量解析出结果,然后显示出来。
C指控制层controller.一个系统的主要业务逻辑就是在控制层里面编写。数据经过视图层提交给控制层,控制层加工(包括处理或对数据库的操作或与模型层的交互)后,可以把数据丢给视图层显示,或是更新数据库。
一个简单的例子参考:http://www.jb51.net/article/60796.htm
2016.5.21整理
对MVC的理解的更多相关文章
- MVC+EF 理解和实现仓储模式和工作单元模式
MVC+EF 理解和实现仓储模式和工作单元模式 原文:Understanding Repository and Unit of Work Pattern and Implementing Generi ...
- WebForm和Asp.Net MVC的理解
我对WebForm和Asp.Net MVC的理解 比较WebForm和Mvc的请求处理方式 首先简单了解一下Asp.Net中怎么对页面进行请求处理的: 在管道的第7-8个事件之间,有一个MapHt ...
- 浅谈对MVC的理解
1.MVC设计模式理解 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界 ...
- JSP的执行原理、JSP的内置对象、四大作用域解析、MVC模式理解>从零开始学JAVA系列
目录 JSP的执行原理.JSP的内置对象.四大作用域解析.MVC模式理解 JSP的执行原理 这里拿一个小例子来解析JSP是如何被访问到的 首先将该项目部署到tomcat,并且通过tomcat启动 通过 ...
- 【Java面试】说说你对Spring MVC的理解
一个工作了7年的粉丝,他说在面试之前,Spring这块的内容准备得很充分. 而且各种面试题也刷了,结果在面试的时候,面试官问:"说说你对Spring MVC的理解". 这个问题一下 ...
- vs怎么创建MVC及理解其含义
怎么创建MVC项目 一·1.点击 文件à新建à项目à模板àVisua C#(选择 .NET Framework 4.0或以上版本) à选择 MVC 3 Web应用程序 或者MVC 4 Web应用程序à ...
- 对spring,struts,hibernate及MVC的理解
对于spring,hibernate,struts等框架,刚开始的时候总是会很迷茫,不知道他们是用来做什么的. 1.对框架的作用理解 个人认为框架的作用是把代码进行了分类,减少了代码的耦合性. 如果不 ...
- 七天学会ASP.NET MVC ——深入理解ASP.NET MVC
七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC 系列文章 七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC 七天学会ASP.NET MVC (二) ...
- 谈谈你对MVC的理解
MVC 模式 MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式.这种模式用于应用程序的分层开发. Model(模型) - 模型代表一个存取数据的对象或 JAVA ...
随机推荐
- java Literals
Primitive Data Types The Java programming language is statically-typed, which means that all variabl ...
- 【PHP】金额数字转换成大写形式
<?php /*将数字金额转成大写*/ function num_to_upper($num) { $d = array('零','壹','贰','叁','肆','伍','陆','柒','捌', ...
- jquery click & get value of attributes of a href
http://stackoverflow.com/questions/6625667/jquery-click-get-value-of-attributes-of-a-href /* Add a l ...
- pthreads多线程数据采集
以前使用curl的多线程并不是真正的多线程,只是一种模拟的多线程,现在使用pthreads来实现真正意义上的多线程. 下载: windows下: http://windows.php.net/down ...
- 从PC跳转至wap
<script language="JavaScript">function mobile_device_detect(url){var thisOS=navigato ...
- Adapter的getView方法详解
来自:http://blog.csdn.net/yelbosh/article/details/7831812 BaseAdapter就Android应用程序中经常用到的基础数据适配器,它的主要用途是 ...
- Laravel 5 基础(五)- 环境与配置
.env 文件是配置文件,包括数据库配置信息,查看 config->database.php ,connections 里面包含了所有数据库的配置,可以在 default 中选择要使用的数据库. ...
- poj 2631 Roads in the North
题目连接 http://poj.org/problem?id=2631 Roads in the North Description Building and maintaining roads am ...
- android开发系列之消息机制
最近接触到一个比较有挑战性的项目,我发现里面使用大量的消息机制,现在这篇博客我想具体分析一下:android里面的消息到底是什么东西,消息机制到底有什么好处呢? 其实说到android消息机制,我们可 ...
- MVC4.0网站发布和部署到IIS7.0上的方法【转:http://www.th7.cn/Program/net/201403/183756.shtml】
最近在研究MVC4,使用vs2010,开发的站点在发布和部署到iis7上的过程中遇到了很多问题,现在将解决的过程记录下来,以便日后参考,整个过程主要以截图形式呈现 vs2010的安装和mvc4的安装不 ...