三层体系结构与数据库编程
接要 本文主要介绍了基于三层体系结构的网络数据库设计,并结合面向对象,分布式数据库开发等理论.全文围绕一个典型而简单的例子,通过VB编程语言,从分析,建模,设计,编码等各个角度对三层体系与数据库进行了全面而详细的阐述,文中提供了全部源代码.
关键词 三层体系 数据库 面向对象 分布式开发
三层体系结构
我们经常会看到许多应聘者在简历上写着"精通数据库编程"的字样,也经常会在招聘网站上看到软件公司的招聘要求中某一项为"精通数据库编程".于是这些应聘者去这些软件公司面试,于是我们看到了许多"精通"者落选的现象.
一些程序员在设计数据库应用时,通常会采用数据控件绑定的方法实现.用鼠标拉几个控件,再用鼠标设置几个属性,连键盘都不用动,就完成了一个数据库应用的开发!当然,这的确是一种快速的数据库应用开发方式,但快速并不意味着精通.
对于大型的数据库应用系统,或是拥有众多客户端的应用系统,我们需要另外一种"精通",这就是几乎每个程序员都听说过的"三层体系结构".
传统的C/S模式
在传统的数据库应用体系中,客户端与数据库完全分开,在客户端上运行了大部分服务,如数据访问规则,业务规则,合法性校验等等.每一个客户端都存在数据引擎,并且每个客户端与数据库服务器建立独立的数据库连接(DB Connection).
基于该种体系的数据库应用系统的优势:开发周期较短,能够适应大部分中小型数据库应用系统的要求(当客户端数量少于50时).
但是,随着数据库应用的日渐发展,数据容量的不断增加,客户端数量的不断增加,该种体系结构显示出了诸多缺陷,主要体现在以下几个方面:
可扩充性:对于数据库服务器端,每当建立一个数据连接,就会占用大量的系统资源,当数据连接达到一定数量(如20个)时,数据库服务器的响应速度与处理速度将大打折扣.
可维护性:基于传统C/S的数据库应用系统,业务规则通常置于客户端应用程序中.如果业务规则一旦发生变化(随便举个例子,如身份证号码有可能升为19位)时,我们就必须修改客户端应用程序,并且将每个客户端进行相应的升级工作.
可重用性:采用传统C/S的设计模式时,数据库访问,业务规则等都固化在客户端应用程序中.如果客户另外提出了B/S的应用需求,则需要在WEB服务器中重新进行数据库访问,业务规则,合法性校验等编码(例如将数据库访问写入ASP代码),而所做的工作与客户端应用程序中的功能完全重复,从而加大了工作量,又使得程序开发者心里感到极不舒服.
正因为以上的诸多缺陷,使得三层(多层)体系结构成为目前数据库应用开发的首选,甚至客户有时也会提出该种技术需求.
三层体系结构
所谓三层体系结构,是在客户端与数据库之间加入了一个"中间层",也叫组件层.这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上.
三层体系的应用程序将业务规则,数据访问,合法性校验等工作放到了中间层进行处理.通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交互.
这样的好处显而易见:
由于数据访问是通过中间层进行的,因此客户端不再与数据库直接建立数据连接.也就是说,建立在数据库服务器上的连接数量将大大减少.例如一个500个客户端的应用系统,500个客户端分别与中间层服务器建立DCOM连接,而DCOM通讯所占用的系统资源极为有限,并且是动态建立与释放连接,因此客户端数量将不再受到限制.同时,中间层与数据库服务器之间的数据连接通过"连接池"进行连接数量的控制,动态分配与释放数据连接,因此数据连接的数量将远远小于客户端数量.
可维护性得以提高.因为业务规则,合法性校验存在于中间层,因此当业务规则发生改变时,只需更改中间层服务器上的某个组件(如某个DLL文件),而客户端应用程序不需做任何处理,有些时候,甚至不必修改中间层组件,只需要修改数据库中的某个存储过程就可以了.
良好的可重用性.同样,如果需要开发B/S应用,则不必要重新进行数据访问,业务规则等的开发,可以直接在WEB服务器端调用现有的中间层(如可以采用基于IIS的WebClass开发,或直接编写ASP代码).
事务处理更加灵活,可以在数据库端,组件层,MTS(或COM+)管理器中进行事务处理.
如果现在你仍然感到不理解,没关系,请看下面的例子.
- 身份证号码生成器 > 三层体系结构与数据库编程
-
三层体系结构与数据库编程
下载该文档 文档格式:DOC 更新时间:2002-09-01 下载次数:0 点击次数:1文档基本属性 文档语言: Simplified Chinese 文档格式: doc 文档作者: GXC 关键词: 主题: 备注: 点击这里显示更多文档属性 经理: 单位: CIG 分类: 创建时间: 上次保存者: 修订次数: 编辑时间: 文档创建者: 修订: 加密标识: 幻灯片: 段落数: 字节数: 备注: 演示格式: 上次保存时间:
- 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
- DOC格式下载
- 您可能感兴趣的
- 二代身份证号码生成器 身份证号码生成器下载 大陆身份证号码生成器 中国身份证号码生成器 在线身份证号码生成器 台湾身份证号码生成器 身份证号码大全生成器 sfz身份证号码生成器 18位身份证号码生成器
- 大家在找
-
- · 塑料回收利用
- · 北京包装箱
- · 最新arcgis9.3软件
- · 宝鸡机床厂招聘信息
- · 3d开奖结果今天250
- · 仙女龙出装
- · 社区工作人员思想汇报
- · 九州学习网注册
- · cadcam
- · www.1985yy.com
- · 半导体器件基础
- · 牛津初中英语7b
- · 空间伤感模块flash
- · www.no367.com
- · 西安电梯费收费标准
- · yy语音下载
- · s版语文小草之歌ppt
- · access多条件查询
- · 河北邯郸租房
- · 食品工厂机械与设备
- · 食疗养生补肾
- · vfp初级教程教案
- · 企业管理概论课件
- · 收音机电路图及原理
- · 杰西皮草女装
- · 中职生品德评语
- · 电脑怎么下载输入法
- · 湖北省京山县邮编
- · 甘肃教育自学考试网
- · 火箭发动机结构图
- 赞助商链接