三层笔记

三层结构概述:

分为物理上(硬件)和逻辑上的划分。

物理上划分:显示层,业务层,数据层

逻辑上划分:UI层,BLL层,DAL层

物理和逻辑可能并不是一一对应的,可能物理上有两个结构,但是逻辑上有三个结构

两层结构:

客户机和服务器就是典型的两层结构

为什么使用三层结构?

业务逻辑比较复杂的时候,需要将业务单独拿出来。

业务逻辑简单的时候是不需要三层的。

三层的一些基本知识:

业务层里面的数据访问层:

DAL作用:

从数据源加载数据(如果面对的是数据库,则相当于select功能)

向数据源中写入数据(inset/update)

从数据源中删除数据(delete)

功能就是和数据源打交道

只提供基本的数据访问,不包含任何业务相关的逻辑处理。

需要在DAL里引用两个命名空间:

using System.Data;
using System.Data.SqlClient;

using System.Data:  System.Data命名空间包含的是一些数据库操作所需要用到的普通数据,如数据表,数据行等,这个对所有数据库都是必须的。

using System.Data.SqlClient: System.Data.SqlClient 命名空间是用于 SQL Server 的 .NET 数据提供程序。

DAO(Data Access Object)是数据访问接口

ODBC(Open Database Connectivity)是开放数据库连接

业务层里面的业务逻辑层:

BLL(Business Logic Laye):

从DAL中获取数据,提供UI显示用。它是一个连接桥。

负责业务逻辑,通过获取UI传来的操作指令,决定执行业务逻辑,在需要访问数据源的时候直接交给DAL处理。处理完成后,返回必要数据给UI。

UI(User Interface Design)层(显示层)

向用户展现特定业务数据,不能和数据源直接打交道。

不包含业务逻辑。

采集用户的输入信息和操作。进行简单一点,用户至上。

Model

Model是一个独立的,和其他类没有任何关系。他是用来存放数据模型的

它属于那一层,很难断定,它是封装数据用的,在三层之间传输数据用的。

所以需要在DAL和DLL里面都需要引用Model。但是它只是一个业务数据模型,和数据库里面的还是有差异的。

原则

DAL只提供基本的数据访问,不包含任何业务相关的逻辑处理。

UI层只负责显示和采集用户操作,不包含任何的业务相关的逻辑处理。

BLL负责处理业务逻辑:通过获取UI传来的操作指令,决定执行业务逻辑,在需要访问数据源的时候直接交给DAL处理,处理完成后,返回必要数据给UI。

UI引用BLLBLL引用DAL。三层忌讳交叉引用。

发布了109 篇原创文章 · 获赞 17 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/aaaPostcard/article/details/91350601
今日推荐