三层结构解释 所谓三层
体系结构,是在
客户端与数据库之间加入了一个中间件层,也叫组件层。这里所 说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也 不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一 台机器上。 三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中 间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通 讯与中间层建立连接,再经由中间层与数据库进行交换。
基本介绍
理解三层结构
我们用三层结构主要是使项目结构更清楚,分工更明确,有利于后期的维护和升级.
三层结构包含:
表示层(USL),
业务逻辑层(
BLL),
数据访问层(DAL)
1:数据访问层:主要是对
原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不
是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务。
2:业务逻辑层:主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻
辑处理,如果说数据层是积木,那
逻辑层就是对这些积木的搭建。
3:
表示层:主要表示WEB方式,也可以表示成
WINFORM方式,WEB方式也可以表现成
:aspx,如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地
提供服务。
区分方法
1:
数据访问层:主要看你的数据层里面有没有包含逻辑处理,实际上他的各个函数主要完成
各个对数据文件的操作。而不必管其他操作。
2:
业务逻辑层:主要负责对数据层的操作。也就是说把一些数据层的操作进行组合。
3:
表示层:主要对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问。
结构说明
完善的三层结构的要求是:修改表现层而不用修改
逻辑层,修改逻辑层而不用修改数据层
.否则你的应用是不是
多层结构,或者说是层结构的划分和组织上是不是有问题就很难说.
不同的应用有不同的理解,这是一个概念的问题.
以下是一些个人感想
是的,这是一个比较抽象的问题,但是看看应能明白了.
业务逻辑层,就是把你的代码中大量出现的组合成一个函数,以后当你需要使用这些代码时,直接调用函数即可.比如.NET中有大量连接数据库的代码(基本上都差不多),我们就可以直接用一个用户控件来定义一下这样代码.以后当我们要连接数据库时,直接调用这些函数就可以了.这些东西就可以叫做逻辑或者中间件.以后我们修改数据库的连接代码时,直接修改这些用户控件就可以了.
三层结构不是.NET的专利,也不是专门用在数据库上的技术。它是一种更加普适的架构设计理念。数据-逻辑-界面。在实际应用中还会根据需要多出传递数据的层,接口层等等。
优缺点
优点
1、无需开发客户端软件,维护和升级方便。
2、可跨平台操作。
3、具有良好的开放性和可扩充性。
4、便于数据库移植。
5、安全性好
6、资源重用性好。
缺点
有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在
表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的
业务逻辑层和
数据访问层中都增加相应的代码。
相对于不分层的编程方法,使用三层或多层架构的应用于程序运行效率低,代码量大,难度增加。
相关概念
1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。
2、
业务逻辑层(
BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。
3、
数据访问层(DAL):该层所做
事务直接操作数据库,针对数据的增添、删除、修改、查找等。