web
BLL
DAL
Model
数据库
一、三层体系架构
BLL 是 业 务 逻 辑层 (Business Logic Layer),DAL 是 数 据 访 问 层 (Data
Access Layer),用户界面层(Web)
图形表示三层结构.
1. 表示层(USL):主要表示 WEB 方式,也可以表示成 WINFORM 方式。如果逻辑层相当强
大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。
2. 业务逻辑层(BLL):主要是针对具体的问题的操作,也可以理解成对数据层的操作,对
数据业务逻辑处理。如果说数据层是积木,那逻辑层就是对这些积木的搭建。
3. 数据访问层(DAL):主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,
而不是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层
或表示层提供数据服务.
二、具体区分
1. 表示层:主要对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问。
2. 业务逻辑层:主要负责对数据层的操作,也就是说把一些数据层的操作进行组合。
3. 数据访问层:主要看你的数据层里面有没有包含逻辑处理,实际上他的各个函数主要
完成各个对数据文件的操作,而不必管其他操作。
三、总结
三层结构是一种严格分层方法,即数据访问层(DAL)只能被业务逻辑层(BLL)访问,业务
逻辑层只能被表示层(USL)访问,用户通过表示层将请求 传送给业务逻辑层,业务逻辑层完
成相关业务规则和逻辑,并通过数据访问层访问数据库获得数据,然后按照相反的顺序依
次返回将数据显示在表示层。有的三层结 构还加了 Factory、Model 等其他层,实际都是在
这三层基础上的一种扩展和应用.
一个简单的三层结构程序一般包括 DAL BLL WEB Model 几个项目,它们的相互引用关
系如下:
1) WEB 引用 BLL,Model 2)BLL 引用 DAL,Model 3)DAL 引用 Model 4)Model 无引用
一提三层架构,大家都知道是表现层(UI),业务逻辑层(BLL)和数据访问层(DAL),
而且每层如何细分也都有很多的方法。但具体代码怎么写, 到底那些文件算在哪一层,却
是模模糊糊的。