三层架构与MVC

三层架构与MVC

系统架构

整合应用程序大的结构。经常提到的系统架构有两种:MVC和三层架构。均是为了降低系统之间的耦合度

三层架构

三层架构与MVC

1、视图层(View) 存放接收用户提交请求的代码

2、服务层(Service) 存放系统的业务逻辑代码

3、持久层(Dao) 存放直接操作数据库的代码
三层架构与MVC

为了更好的降低各层之间的耦合度,在三层架构设计中,采用面向抽象编程,即上层对下层的调用,是通过接口实现的。而下层对上层的真正服务提供者,是下层接口的实现。服务标准(接口)是相同的,服务提供者(实现类)可以更换,这就实现了层之间的耦合。

MVC

Model(模型)承 载数据,并对用户提交请求进行计算。分为两类:

  • 数据承载Bean(实体类)
  • 业务处理Bean(Service或Dao对象)

View(视图) 接受用户的请求,可以是表单请求、超链接请求、AJAX请求登。

Controller(控制器) 调度(将用户的请求转发给Model进行处理,并根据其计算结构向用户提供相应)

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中 。

三层架构与MVC

三层架构与MVC关系

联系

三层架构中的View层是跟用户发生直接关系的层。

MVC中的V和C就是这样的存在,所以MVC中的V和C均属于三层架构的View层。

同时,MVC中的M(Model)包括了数据承载Bean和业务处理Bean,其中业务处理Bean分为Service或Dao对象,分别对应业务逻辑处理和数据库操作,相应的,它们对应的是三层架构中的Service层和Dao层。

三层架构与MVC

区别

MVC和三层架构的区别:
M 即Model(模型层),主要负责处理业务逻辑以及数据库的交互
V 即View(视图层),主要负责显示数据和提交数据
C 即Controller(控制层),主要是永作辅助捕获请求并控制请求转发

? 三层
UI界面层
BLL业务逻辑层
DAL数据访问层

? 三层是基于业务逻辑来分的,而mvc是基于页面来分的
MVC模式是一种复合设计模式,一种解决方案
三层是种软件架构,通过接口实现编程
三层模式是体系结构模式,MVC是设计模式
三层模式又可归于部署模式,MVC可归于表示模式

推荐阅读 https://www.cnblogs.com/sdyblog/p/7411229.html

三层架构与MVC

上一篇:Git 上传自己代码到GitHub


下一篇:AJAX基础(三)