MVC个层次之间的联系
MVC顾名思义分为三层:
M:Model层 Model层中 包含 DAO层和Javabean层;
V:view 意为视图层也叫表示层,也可以直接理解为是JSP,用于前端显示;
C: ‘控制层’ 包含ctroller层,和service层;
接下来,进行具体的理解(笔者个人理解)M,V,C,三个层次下面的各个层次。
1.首先了解,‘控制层’下的ctroller 层 和service层
ctroller层:控制层,主要实现与视图层的交互,调用service层的接口来控制业务流程。
service层:业务层,调用DAO层的接口,负责给controller层提供接口,(建立在DAO层之上,controller层之下) 首先设计自己的接口,再设计其实现类,负责业务模块的逻辑应用设计。
2.再讲一下,Model层下的DAO层和Javabean层
DAO层:数据访问层,用来操作数据库的层次,比如,连接,增删改查等操作,这个层次和Javabean层次是一一对应的。该层次也是先设计自己的接口,一般是一个表对应一个接口,然后再设计接口相对应的实现类,一般操作,增删改查这些步骤很是相似,可以设计个接口,再用一个公共类进行实现该接口。
Javabean层:里面的类是用来和DAO层一一对应,用来操作数据库,我的理解是javabean更多的是一种规范,就是一个Java对象可以包含一组set和get方法。该层通常也写成pojo(简单的Java对象,实际就是普通的Javabean)层和entity(实体bean)层。该层次下的一个类对应数据库中的一个表单
MVC实现的过程: 表示层(view)调用控制层(controller),控制层调用业务层(service),业务层调用数据访问层(DAO);
以下是笔者自己写的一个MVC关系逻辑,因为手机像素太高,上传到电脑上来,显示太大了,下到手机下来看就会正常显示的,因为笔者也是最近学的MVC,云里雾里的感觉,所以就花了几个小时,自己整理的,不足之处,欢迎指正。

MVC个层次之间的联系的更多相关文章
- .NET、C#和ASP.NET,ASP.NET MVC 四者之间的区别
经常,会有一些人搞不清楚.NET和c#和ASP.NET这三者之间的关系,她们都是什么呢?他们之间有什么关系呢?总结一下 首先:什么是.NET? .NET是微软公司下的一个开发平台,.NET核心就是.N ...
- MVC中Action之间传值
一 MVCAction之间的传值 之前一直觉得关于MVC里面的传值,只能从<视图—>Action>,和<Actoin->视图>但是今天在项目里面需要实现将几个视图 ...
- mvc 三个 之间 肮脏的交易
就当个小零食一样写. MVC 是 Model-View-Controller 的缩写,Model代表的是应用的业务逻辑(通过 JavaBean,EJB 组件实现),View 是应用的表示层(由 JSP ...
- .NET、C#和ASP.NET、ASP.NET MVC四者之间的区别
什么是.NET? .NET是微软公司下的一个开发平台,.NET核心就是.NET Framwork(.NET框架)是.NET程序开发和运行的环境,在这个平台下可以用不同的语言进行开发,因为.NET是跨语 ...
- MVC与MVVM之间在IOS中的区别
作为一个iOS开发者,我不止一次听到我的一些开发者朋友跟我说我写的iOS代码看起来好舒服,很整洁,为什么咱们iOS开发的相当一大部分应用软件都给人以美的享受,究竟是什么使得iOS上的应用可以如此漂亮? ...
- ASP.NET MVC controller 之间传JS值
在ASP.NET MVC中有东西叫TempData,它的类型是TempDataDictionary,它与ViewData以及ViewBag的不同之处在于 它的内部是使用session来保存信息的,可以 ...
- PCB MVC启动顺序与各层之间数据传递对象关系
准备着手基于MVC模式写一套Web端流程指示查看,先着手开发WebAPI打通数据接口,后续可扩展手机端 这里将MVC基本关系整理如下: 一.MVC启动顺序 二.MVC各层之间数据传递对象关系
- .Net Core MVC 网站开发(Ninesky) 2.3、项目架构调整-控制反转和依赖注入的使用
再次调整项目架构是因为和群友dezhou的一次聊天,我原来的想法是项目尽量做简单点别搞太复杂了,仅使用了DbContext的注入,其他的也没有写接口耦合度很高.和dezhou聊过之后我仔细考虑了一下, ...
- ASP.NET Core 中文文档 第四章 MVC(4.2)控制器操作的路由
原文:Routing to Controller Actions 作者:Ryan Nowak.Rick Anderson 翻译:娄宇(Lyrics) 校对:何镇汐.姚阿勇(Dr.Yao) ASP.NE ...
随机推荐
- BNU4299——God Save the i-th Queen——————【皇后攻击,找到对应关系压缩空间】
God Save the i-th Queen Time Limit: 5000ms Memory Limit: 65536KB 64-bit integer IO format: %lld ...
- ubuntu命令行添加拥有管理员权限新用户
最近买了个服务器,只有一个root用户,天天登录挺不方便的,所以想要新建用户;之前在本地都是用界面话新建的用户,这次记录一下学习命令行新建用户的过程: 第一步 : # sudo adduser zhq ...
- Java工程路径及相对路径(转载)
3. 新建文件,默认位于工程目录new File("xxx.txt").getAbsolutePath();例如输出,D:\workspaces\workspace1\myProj ...
- [LeetCode]26. Remove Duplicates from Sorted Array删除排序数组中的重复项
Given a sorted array nums, remove the duplicates in-place such that each element appear only once an ...
- web应用开发周期
web应用开发周期 1. 前期准备 2. 编码 3. 上线 4. 数据分析 5. 持续交付 6. 遗留系统 7. 回顾与新架构 重构的一般性因素 1. 系统难以维护 2. 系统技术栈难以符合业务需求 ...
- Angular js 过滤器 笔记(转自菜鸟教程)
1.uppercase,lowercase 大小写转换 {{ "lower cap string" | uppercase }} // 结果:LOWER CAP STRING {{ ...
- tr标签是什么
<tr> 标签定义 HTML 表格中的行. tr 元素包含一个或多个 th 或 td 元素.
- Mantis中的状态
在 Mantis中的 问题状态一共有以下几种 10:new,20:feedback,30:acknowledged,40:confirmed,50:assigned,80:resolved,90:cl ...
- 微信小程序开发实践
目录 项目是否适合移植到小程序上? 概要介绍 实践得到的经验 规则 小程序不支持的 新特性 小窍门 会话管理 进阶 项目是否适合移植到小程序上? 小程序由于微信提供了一些组件,在微信中的一些体验确实不 ...
- 如何在Kubernetes里给PostgreSQL创建secret
创建一个initdb.sql文件,输入如下内容: -- This is a postgres initialization script for the postgres container. -- ...