第14章 三层结构开发模式

第14章 三层结构开发模式

ID:40312433

大小:430.50 KB

页数:22页

时间:2019-07-30

第14章 三层结构开发模式_第1页
第14章 三层结构开发模式_第2页
第14章 三层结构开发模式_第3页
第14章 三层结构开发模式_第4页
第14章 三层结构开发模式_第5页
资源描述:

《第14章 三层结构开发模式》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、第14章三层结构开发模式14.1三层结构概述14.1.1两层结构及其局限性前面我们讲述的Web应用程序都是基于两层结构的,它们有如下特点:l数据库访问和用户类型判断逻辑放在一起实现。l用户界面层直接调用数据访问实现。l整个系统功能放在同一项目中实现。传统的两层结构的特点是用户界面层直接与数据库进行交互,还要进行业务规则、合法性校验等工作。两层结构软件模型如图18-2所示。这种结构存在着很多局限性,比如:一旦用户的需求发生变化,应用程序都需要进行大量修改,甚至需要重新开发,给系统的维护和升级带来了极大的不便;用户界面层直接访问数据库,会带来很多安全隐患。为了克服两层结

2、构的局限性提出了三层结构。14.1.2什么是三层结构所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。通用三层结构软件模型如图18-2所示。中间层通常包括业务逻辑层(BusinessLogicLayer,简称BLL)、数据访问层(DatabaseAccessLayer,简称DAL)和数据对象模型层(DatabaseObjectModelLayer,简称DOM)。此时的三层结构

3、软件模型如图18-2所示。22用户界面(UserInterface,简称UI),也称表示层,位于最上层,用于显示和接收用户提交的数据,为用户提供交互式的界面。表示层一般为Windows窗体应用程序或Web应用程序。业务逻辑层是表示层和数据访问层之间沟通的桥梁,主要负责数据的传递和处理。数据访问层主要实现对数据的读取、保存和更新等操作。数据对象模型层即业务实体层。主要用于表示数据存储的持久对象。在实际应用程序中的实体类是跟数据库中的表相对应的,也就是说一个表会有一个对应的实体类。当然有些三层结构并不包含单独的数据对象模型层,而将其功能分解到业务逻辑层和数据访问层之中。

4、在三层结构中,表示层直接依赖于业务逻辑层;业务逻辑层直接依赖于数据访问层;数据访问层直接依赖于数据对象模型层。14.1.3三层结构的优点三层结构主要体现出对程序分而治之的思想:数据访问层只负责提供原原始数据,并不需要了解业务逻辑;业务逻辑层调用数据访问层提供的方法自定义一些业务逻辑,对数据进行加工,本身不需要了解数据访问层的实现;表示层直接调用业务逻辑提供的方法把数据呈现给用户。三层结构的优点在于不必为了业务逻辑上的微小变化而迁至整个程序的修改,只需要修改商业逻辑层中的一个函数或一个过程;增强了代码的可重用性;便于不同层次的开发人员之间的合作,只要遵循一定的接口标准

5、就可以进行并行开发了,最终只要将各个部分拼接到一起构成最终的应用程序。三层结构的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交互,这样会大大提高系统的安全性。三层结构的应用程序更能够适应企业级应用日益增长的复杂度和灵活性的要求,并且通过软件分层的高内聚、低耦合的原则,实现扩展、维护和重用的要求,可以大大提高开发效率。14.2用ASP.NET搭建三层结构框架ASP.NET可以使用.NET平台快速方便的搭建三层结构。ASP.NET革命性

6、的变化是在网页中也使用基于事件的处理,可以指定处理的后台代码文件,可以使用C#、VB作为后台代码语言。.NET中可以方便的实现组件的装配,后台代码通过命名控件可以方便的使用自己定义的组件。表示层放在Web窗体中,业务逻辑层、数据访问层和数据对象模型层用类库来实现,这样就很方便的实现了三层结构。1.新建解决方案打开VS2008,新建一个"空白解决方案",将其命名为"ThreeLayers"。2.搭建表示层(网站)22(1)在"解决方案资源管理器"中,在解决方案名称上单击鼠标右键,在弹出的快捷菜单中选择"添加"→"新建网站"命令,新建一个网站,其存放位置为解决方案文件夹

7、下的MyWeb子文件夹。(2)在该网站下建一个数据库(简单起见可建Access数据库),以备存取数据。3.搭建业务逻辑层(类库)在"解决方案资源管理器"中,新建一个"类库"项目。填写项目的名称为"BusinessLogicLayer",该项目用于实现业务逻辑。4.搭建数据访问层(类库)在"解决方案资源管理器"中,新建一个"类库"项目。填写项目的名称为"DataAccessLayer",该项目用于实现数据访问层。5.搭建数据对象模型层(类库)在"解决方案资源管理器"中,新建一个"类库"项目。填写项目的名称为"Models",该项目用于实现数据实体。至此,已搭建了三

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。