Leon's Blog

Programmer

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
一个N层的应用程序通常有三层:表现层、业务层和数据层。下面让我们看看每层都做些什么。  

表现层(Presentation Layer)  

表现层用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。  

在ASP.NET中,该层包括aspx页面、用户控制、服务器控制以及某些与安全相关的类和对象。  

业务层(Business Tier)  

业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。  

在ASP.NET中,该层包括使用SqlClient或OleDb从SQL Server或Access数据库取数据、更新数据及删除数据,并把取得的数据放到DataReader或DataSet中返回给表现层。返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。  



BLL和DAL  

通常该层被划分成两个子层:业务逻辑层(Business Logic Layer,BLL)和数据访问层(Data Access Layers,DAL)。业务逻辑层在数据访问层之上,也就是说BLL调用DAL的类和对象。DAL访问数据并将其转给BLL。  

在ASP.NET中,该层可以用SqlClient或OleDb从SQL Server或Access数据库取数据,把数据通过DataSet  或DataReader的形式给BLL,BLL处理数据给表现层。有的时候,例如直接把DataSet 或DataReader送给表现层的时候,BLL 是一个透明层。  

数据层(Data Tier)  

数据层是数据库或者数据源。在.NET中,通常它是一个SQL Server或Access数据库,但不仅限于此两种形式,它还可能是Oracle,mySQL,甚至是XML。  

逻辑层VS(分布式)物理层  

人们容易将这两个概念搞混。我们说逻辑层是把层按类的集合来划分,而这些层都在同一台个服务器上。(分布式)物理层是指类的集合在不同的服务器上,用附加的代码来处理层间的通信,比如remoting和web服务。 
posted on 2007-09-03 11:47  疯蜂  阅读(471)  评论(0编辑  收藏  举报