【三层】-三层基本小知识

三层

  1. 三层结构概述:

:有逻辑层和物理层划分

物理上的三层:显示层/业务层/数据层

(客户PC:应用服务器;数据库服务器)

 

逻辑:UI/BLL+DAL/DB

我们讨论的(逻辑)三层结构:

UI、BLL、DAL

为什么要使用三层架构?

  1. 不是所有系统都需要三层架构的。当业务很复杂才需要。

什么情况下不需要?

  1. 业务逻辑简单
  2. 没有真正的数据存储层,所以也就不需要数据访问层

什么情况下需要使用?

BLL+DAL(既有数据访问层,也有业务逻辑层)

  1. 必备基础知识:

 

  1. 显示层View/UI
  2. 业务逻辑层BLL(Business Logic Layer)
  3. 数据访问层DAL(Data Access Layer)

DAL的作用:(和数据源打交道)

从数据源(不一定是数据库)加载数据(select)

向数据源写入数据(Insert/Update)

从数据源删除数据(Delete)

仅限于和数据源操作

  1. DAL中常用的技术

ADI,NET+SQL语句

O/R Mapping框架 NHiberate

访问SQL Server 数据库时Ling to SQL

DAO是数据访问对象

二、显示层

UI的作用:

         向用户展现特定业务数据

         采集用户的输入信息和操作

UI设计的原则:

         用户至上,兼顾简洁

         在满足用户的条件下,尽量让界面简单。

UI中常用的技术

         Windows FormFormControl

         ASP.Net: aspxascxmasterhtml

添加完控件,然后修改名字,再修改一些特别注意的地方

三、业务逻辑层

BLL的作用

         DAL中获取数据,以供UI显示用。

         UI中获取用户指令和数据,执行业务逻辑。

         UI中获取用户指令和数据,通过DAL写入数据源。

BLL的职责机制

         UI->BLL->UI

         UI->BLL->DAL->BLL->UI

  1. 在具体项目中的应用 –原则

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

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

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

  1. 具体应用-Assembly

DAL/BLL/UI分别在不同的程序集中(三层结构有扩展性,放到不同的程序集中可以替换)

各个层之间的引用关系

UI->BLL->DAL

DAL 所在程序集不引用BLL和UI

BLL需要引用DAL

UI直接引用BLL,可能会间接引用DAL。

(非常忌讳互相引用,所以才有了Model的业务数据模型)

四、Using System.Data.SqlClient

只要用到SqlConnection conn = Singleton.GetSingleton().Conn; SqlCommand cmd = new SqlCommand(); SqlDataReader r SqlDataAdapter da = new SqlDataAdapter(cmd); 都要引用。

只要和数据库交互,必须要有连接字符串。

评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TGB-Earnest

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值