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

    01.什么是三层架构

      01.表示层(User Interface layer):负责接收用户的输入,将输出呈现给用户,以及访问安全性验证,并对输入的数据的正确性,有效性及呈现样式负责,但对输出的数据的正确性不负责。

      02.业务逻辑层(Business Logic Layer):负责系统领域业务的处理,负责逻辑性逻辑的生成,处理及转换。对所输入的逻辑性数据的正确性及有效性负责,但对输出的逻辑性数据及用户性数据的正确性不负责任,对数据的呈现样式不负责。

      03.数据访问层(Data Access Layer):负责与数据源的交互,即数据的插入,删除,修改,以及从数据库中读出数据等操作,但对数据的正确性和有效性不付责任,对数据的用途不了解,不负担任何业务逻辑的处理。

     

     

     

     

    02.搭建三层的步骤?

    Model:将数据表中的列转换成实体类中的属性。

    DAL(Data Access Layer:专门负责和数据库交互,所有的SQL都要出现在该层。

    BLL(Business Logic Layer):隔离DALUI层,将DAL数据返回给UI层。

    UI(User Interface layer):负责界面的展示。

    Common:工具类层 。负责和数据库无关的但是UI又需要调用的。

    调用关系:

    01.所有层都要引用Model

    02.BLL依赖于DALModel

    03.UI依赖于BLLCommonModel

     

    04. Model:不依赖任何层

    引用关系:

     

        DALModel

     

        BLLModelDAL

     

        UIModel,BLL,Common

         Common:

     

    03.三层架构有什么优点?

     

    解析:

     

     优点:

     

        1、开发人员可以只关注整个结构中的其中某一层;

     

       2、可以很容易的用新的实现来替换原有层次的实现;

     

        3、可以降低层与层之间的依赖;

     

       4、有利于标准化;

     

       5、利于各层逻辑的复用。

     

        6、扩展性强。不同层负责不同的层面,如PetShop可经过简单的配置实现Sqlserveroracle之间的转换,

     

    当然写好了也可以实现B/SC/S之间的转换

     

        7、安全性高。用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。

     

        8、项目结构更清楚,分工更明确,有利于后期的维护和升级

     

     

     缺点:

     

      1、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以直接造访数据库,

     

    以此获取相应的数据,如今却必须通过中间层来完成。

     

       2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,

     

    为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码

     

    3、增加了代码量,增加了工作量

     

  • 相关阅读:
    [转载][开源框架推荐]VTDXML:世界上最快的XML处理框架
    iptables规则的查看、添加、删除和修改
    [转载]Linux大文件传输
    nginx+ php 安装配置实用
    wojilu框架代码分析之ActionProcessor.Process()
    数据库范式通俗理解,谈谈数据库设计
    我记录综合系统学习研究之用户管理二(wojilu.Web.Controller.Users MainController)
    我记录学习研究之前端开发二(js基于1.8版)
    我记录综合系统学习研究之开篇
    我记录综合系统学习研究之用户管理一(wojilu.Web.Controller.Users MainController)
  • 原文地址:https://www.cnblogs.com/zhangzongle/p/5325178.html
Copyright © 2011-2022 走看看