mvc各层简单清晰的描述
mvc各层简单清晰的描述
view-controller-model
这是在学校就接触到的概念,在正式加入程序员队伍之前,我对其的理解也只仅仅停留在字面意思,即模型层+视图层+控制层。但是逐渐通过工作的磨砺,现在已经对其有了比较清楚的认识。
其实按照用户请求的执行顺序应该从左向右依次为view-controller-model。
- 视图层view:用于展示数据,与用户进行交互。
- 控制层controller:用于分发控制到来的请求,并调用模型层与数据库进行交互,以及将数据返回给视图层展示。
- 模型层model:数据模型,它与数据库进行交互,进行CURD操作。
如下图:
这里模拟一个用户查询和新增的请求。
当用户通过浏览器的web界面发起查询请求时,首先会被控制层controller分发,然后会调取相应的model层进行数据库查询。然后model层再将数据库查询到的数据返回给控制层,控制层再将其返回view层,view层web页面中进行显示。
view-controller-service-dao
- 视图层view:用于展示数据,与用户进行交互。
- 控制层controller:用于分发控制到来的请求,并将请求分发给相应的业务层。以及将数据返回给视图层展示。
- 业务层service:业务处理,调用数据访问层与数据库进行交互。
- 数据访问层dao:它与数据库进行交互,封装了对数据库的CURD操作。
mvc各层简单清晰的描述相关推荐
- cml sml区别_如何简单清晰地描述 CAPM 在投资学中的运用,以及 CAL、CML 和 SML 的关系和区别?...
如何简单清晰地描述 CAPM 在投资学中的运用,以及 CAL.CML 和 SML 的关系和区别? 2018-09-21 [姚岑卓的回答(41票)]: 想深入了解CML和SML,我们首先得先知道它们是怎 ...
- SSM框架中MVC各层的作用以及运行流程
这篇博文主要介绍的是SSM(Spring.SpringMVC.Mybatis)框架中,MVC各层的作用以及各层之间的交互和框架整体运行流程. 一.MVC各层级间的作用及关系 表现层(springMVC ...
- 红黑树 键值_查找(一)史上最简单清晰的红黑树讲解
http://blog.csdn.net/yang_yulei/article/details/26066409 查找(一) 我们使用符号表这个词来描述一张抽象的表格,我们会将信息(值)存储在其中,然 ...
- Spark数据挖掘-基于 LSA 隐层语义分析理解APP描述信息(1)
Spark数据挖掘-基于 LSA 隐层语义分析理解APP描述信息(1) 1 前言 结构化数据处理比较直接,然而非结构化数据(比如:文本.语音)处理就比较具有挑战.对于文本现在比较成熟的技术是搜索引擎, ...
- 查找(一)史上最简单清晰的红黑树讲解 http://blog.csdn.net/yang_yulei/article/details/26066409
查找(一)史上最简单清晰的红黑树讲解 2014-05-18 00:05 4037人阅读 评论(6) 收藏 举报 分类: 数据结构(7) 算法(4) 版权声明:本文为博主原创文章,未经博主允许不得转载. ...
- 描述常见的计算机硬件系统的构成,用简单的语言描述计算机硬件系统构成
用简单的语言描述计算机硬件系统构成 用简单的语言描述计算机硬件系统构成 一.计算机硬件系统概述 所谓计算机硬件系统,就是指构成计算机看得见的,摸得着的实际物理设备. 常见的计算机硬件组成主要由下图各部 ...
- 用简单的语言描述C++ 是什么?
用简单的语言描述C++ 是什么? 答:C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛.C++支持多种编程范式 --面向对象编程.泛型编程和过程化编程. 其编程领域众广,常用于系统开发,引 ...
- 爱上MVC~业务层刻意抛出异常,全局异常的捕获它并按格式返回
对于业务层的程序的致命错误,我们一直的做法就是直接抛出指定的异常,让程序去终断,这种做法是对的,因为如果一个业务出现了致命的阻塞的问题,就没有必要再向上一层一层的返回了,但这时有个问题,直接抛异常,意 ...
- 初二数学勾股定理,八年级上册思维导图简单清晰
编辑by脆脆鲨 在北师大版的教材中,勾股定理安排在了八年级数学上册的第一章进行学习,主要的内容可以分为"勾股定理"."勾股定理的逆定理"及"勾股定理的 ...
最新文章
- Mysql数据库中修改库名的的方法
- 从无到有算法养成篇-链式存储结构之循环链表
- java中junit_【Java】Junit快速入门
- javascript 传多个参数的正则表达式(用来获取某个参数值)
- MySQL Workbench运行脚本
- spring之@value设置默认值
- windows安装python2.7_Windows下安装python2.7及科学计算套装
- Jsp简单入门与Jsp实用教程总结
- 究竟什么是软件资产管理(SAM)?企业应该怎么做?
- [PDDL人工智能] 01.PDDL规划器安装及入门详解(规划领域定义语言)
- 【随笔】Linux刷脏页
- ballerina 学习 三十 扩展开发(一)
- 万字面试分享贴!从十二个角度解析面试全流程!附互联网公司Offer难度系数分析...
- [Solved] Splunk: Cannot get username when all users are selected“
- java实现附件预览(openoffice+swftools+flexpaper)
- 客快物流大数据项目(三十):软件下载后存放位置
- 历届上海国际电影节获奖名单
- 数据分析[1.2]--《深入浅出数据分析》1-分解数据
- 视频播放不流畅怎么办?使用CDN加速一步搞定!
- 【商业分析 03】疫情之下(20年初IT桔子投融资数据分析)
热门文章
- c语言数组冒泡排序程序的解释,c语言指针数组冒泡排序代码
- 【嵌入式Linux】嵌入式Linux应用开发基础知识之网络通信
- 学历史能学计算机吗,历史专业学计算机好吗
- war压缩命令_BetterZip mac版(超强解压缩软件)
- 并行计算(一)——初步认识
- DMA(direct memory access)控制方式
- flush什么意思中文翻译_flush是什么意思
- c#发送邮件,可发送多个附件
- [HAOI2010]软件安装(树形背包,tarjan缩点)
- Python 字符串语法,for