三层架构和mvc的区别

一.MVC简介

MVC 即Model(模型),View(视图),Controller(控制控制器)。

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

1.Model:模型对象是将程序数据存储在数据库中的应用程序部件。

2.View:视图是显示应用程序用户界面 (UI) 的组件。

3.Controller:控制器则用于处理和响应用户输入和交互。

二.三层框架

三层架构将整个项目划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。

三层架构就是将整个业务应用划分为:界面层(User Interface layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data access layer)。区分层次的目的即为了“高内聚低耦合”的思想。在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或称为领域层)、表示层。

1.数据访问层(EntityFramework):主要负责对数据的访问管理,为业务逻辑层提供方法调用。

2.业务逻辑层:主要负责业务逻辑的处理,对数据层的操作。

3.UI表示层:主要对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问。

三层框架引用关系图:

三层架构和mvc的区别_第1张图片

三.MVC和三层架构的区别:

它俩划分的层次不同。三层架构是一个分层式的软件体系架构设计,它可适用于任何一个项目。MVC是一个设计模式,它是根据项目的具体需求来决定是否适用于该项目。

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

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

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

硬要给他们对应的话,那么三层架构中的UI对应MVC中的view(jsp),都是用于显示以及获取界面的数据;三层架构中的BLL层和DAL层对应MVC中的Model(javabean)层都是用于处理上层传递来的数据以及从数据库获取的数据的;MVC中的Controller(Servlet)最多算是三层架构中的UI的一部分,也就我们常说的是Servlet。

三层架构和mvc的区别_第2张图片

            

你可能感兴趣的:(杂杂杂,三层架构和mvc)