zoukankan      html  css  js  c++  java
  • 三层架构与MVC

    三层架构与MVC

    系统架构

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

    三层架构

    mark

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

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

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

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

    MVC

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

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

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

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

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

    mark

    三层架构与MVC关系

    联系

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

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

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

    mark

    区别

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

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

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

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

  • 相关阅读:
    死磕 java同步系列之Phaser源码解析
    死磕 java同步系列之CyclicBarrier源码解析——有图有真相
    死磕 java同步系列之StampedLock源码解析
    死磕 java同步系列之AQS终篇(面试)
    死磕 java同步系列之Semaphore源码解析
    网速监控-nload
    权限(rwx)对于目录与文件的意义
    maven自定义archetype
    -------------------新的开始-------------------
    GitFlow入门
  • 原文地址:https://www.cnblogs.com/wind-zhou/p/12943709.html
Copyright © 2011-2022 走看看