对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 ...
随机推荐
- jQuery下拉友情链接美化效果代码分享
这篇文章主要介绍了jQuery下拉友情链接美化效果,很实用的代码,推荐给大家,有需要的小伙伴可以参考下. 文实例讲述了jQuery下拉友情链接美化效果,jQuery下拉友情链接美化代码是一款基于jQu ...
- MySQL 5.7.9 免安装配置
MySQL 5.7.9 免安装配置 环境:win10 64位 mysql版本:mysql-5.7.9-winx64.zip (http://dev.mysql.com/downloads/mysql/ ...
- OpenFileDialog使用方法
OpenFileDialog基本属性 AddExtension 控制是否将扩展名自动添加到文件名上 CheckFileExists 指示用户指定不存在的文件时是否显示警告 CheckPathExist ...
- Knockout.Js官网学习(简介)
前言 最近一段时间在网上经常看到关于Knockout.js文章,于是自己就到官网看了下,不过是英文的,自己果断搞不来,借用google翻译了一下.然后刚刚发现在建立asp.net mvc4.0的应用程 ...
- Yii 操作提示框实现
如图: html + css 代码: 这是 YII 模板的写法 欢迎使用Yii <style> div.success{ background: #C5FBBD; border: ...
- 菜鸟的js学习笔记
学的越多感觉不会的越多.php+mysql学了点皮毛.知道搞web的是要会js的于是开始结合公司的项目开始学习js之旅(http://www.w3school.com.cn/b.asp) $(docu ...
- delphi的几个特别关键字 object absolute
1.object关键字相当于C++中的struct, record定义个结构体只能定义数据,而object可以定义方法,默认都是public的. 代码示例如下: TTest = record na ...
- Castle 集锦
Castle Windsor http://www.cnblogs.com/RicCC/archive/2010/03/30/castle-windsor-ioc-di.html 官方配置说明(反正我 ...
- openSUSE13.1安装搜狗输入法 for Linux
一句话总结:爽死我了!什么叫输入的快感终于体会到了,搜狗输入法,码农的好伙伴!!! 转自openSUSE论坛 女王陛下 https://forum.suse.org.cn/viewtopic.php? ...
- WPF自定义控件(一)——Button
接触WPF也有两个多月了,有了一定的理论基础和项目经验,现在打算写一个系列,做出来一个WPF的控件库.一方面可以加强自己的水平,另一方面可以给正在学习WPF的同行一个参考.本人水平有限,难免有一些错误 ...