阅读目录
这几天看了不少三层架构的资料,整理整理
——故写篇博文谈谈自己的看法。
三层架构概念:
三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想,复杂项目不能把SQL语句直接写到程序里,不模块话,难以维护。应该采取三层架构。
1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。
2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。
3、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、查找等。
简单的说,UI层调用BLL,BLL调用DAL,数据用Model进行传递,Model为各层之间架起了数据传输的桥梁。
参考模型:UI<-->Model<-->BLL<-->Model<-->DAL
传统的两层结构和三层架构之间的区别:
下面我以一个简单的例子来细数三层架构:
代码剖析:
- 新建一个项目(Windows 窗体应用程序),再在根目录下新建3个文件夹,分别是Model,DAL,BLL。
- 在Model下添加一个Person类
- 在DAL下添加一个SQLHelper类和一个PersonDAL类。
- 在BLL下添加PersonBLL类
Person.cs代码如下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 三层架构Demo.Model { class Person { public int Id { get;set;} public int Age { get; set; } public string Name { get; set; } } }
SQLHelper类,封装了数据库操作的方法:
SQLHelper.cs代码入下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.SqlClient; using System.Configuration