(计算机应用技术专业论文)web数据库技术研究与应用.pdf_第1页
(计算机应用技术专业论文)web数据库技术研究与应用.pdf_第2页
(计算机应用技术专业论文)web数据库技术研究与应用.pdf_第3页
(计算机应用技术专业论文)web数据库技术研究与应用.pdf_第4页
(计算机应用技术专业论文)web数据库技术研究与应用.pdf_第5页
已阅读5页,还剩97页未读 继续免费阅读

(计算机应用技术专业论文)web数据库技术研究与应用.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

北京交通大学硕士研究生学位论文 摘要 i n t e rn e t 的日益普及和w e b 技术的飞速发展对传统的mi s系统的开发 与应用产生了巨大的冲击。we b 技术和数据库技术互相结合,产生了w e b 数据库。 w e b 数据库集合了we b 技术和数据库技术的优点: we b网页从静 态网页发展成了由数据库驱动的动态网页;数据库系统的开发环境和应用 坏境实现了分离。 本文的研究工作包括: 从 w e b数据库的四个关键技术入手,详细分析研究了w e b数据库系 统的体系结构、 w e b 与数据库的接口 技术、 w e b 数据库系统设计与o o a d ( o b j e c t o r ie n t e d a n a ly s is a n d d e s i g n ) 的 结 合、 w e b 数 据 库系 统的 安 全 性。 在对这四个关键技术进行了透彻的研究之后,我们分析选取了合适的开发 工具,设计开发了一个实际的we b 数据库系统教育部在线科技期刊。 教育部在线科技期刊是一个三层w e b 数据库系统。 该系统的目标是提 供一 个论文发表和交流的平台,加快论文信息的交流,促进国内科研水平 的提高。 本文的主要内容是: 描述了教育部在线科技期刊系统中若干关键技术的研究和实现,主要 包括以下几个方面。 1 、从体系结构的角度来看,w e b数据库有两层和三层结构。本系统 采用了三层b / s / s 结构。 2 、本系统采用基于j a v a的w e b 数 据库访问 技术: j s p , j a v a b e a n 和 j d b c ;后台数据库采用o r a c l e 9 i 。实现了应用程序中表示层、事 务逻辑层和数据层的分离。 3 、分析和研究了o o a d技术对系统设计和开发的促进和辅助作用。 本系统在设计中采用了 o o a d ( o b j e c t o r i e n t e d a n a ly s i s a n d d e s i g n )的思想和方法。 4 、由于we b 数据库系统运行在开放的环境中, 本文还研究了w e b 数 据库的安全性问题。 本系统也在多个层次上实现了系统的安全性。 本文的主要工作和贡献是; 1 、对 we b数据库的四个关键技术进行了全面的研究、比较、归纳和 总结,对各个具体的技术的优缺点进行了详细的分析和说明。为 以后的we b 数据库的开发奠定了理论基础。 2 、将面向对象的分析和设计技术 ( o o a d)应用于 w e b数据库系统 设计,引入了软件工程的c a s e 管理方法, 利用r a t i o n a l r o s e 2 0 0 2 这个辅助工具,获得了设计良 好的w e b数据库系统方案的方法和 流程。 气翰 作 黄、 针 卯 叹誉 j 七 京交通大学硕士研究生学位论文 3 、在程序实现过程中,严格按照表示层、事务逻辑层和数据层三层 结构分层实现,采用了面向对象的编程 ( o o p ) ,有效提高了程序 的可重用性和可维护性,为同类 w e b 数据库的开发应用提供了参 考。 关键词:we b 数据库 面向对象 体系结构 ooad j s p 系统安全性 北京交通大学硕士研究生学位论文 ab s t r a c t t h e p o p u l a r i z a t i o n o f t h e i n t e rn e t a n d t h e f as t d e v e l o p m e n t o f t h e w e b t e c h n o l o g y b r i n g g r e a t i m p a c t o n t r a d i t i o n a l mi s . t h e r e f o r e , p e o p l e p u t t h e w e b t e c h n o l o g y a n d t h e d a t a b a s e t e c h n o lo g y t o g e t h e r , w h ic h l e a d t o t h e a p p e a r a n c e o f t h e w e b - d a t a b a s e t e c h n o l o g y . c o m b i n g t h e a d v a n t a g e o f w e b t e c h n o l o g y a n d d a t a b a s e t e c h n o l o g y , t h e w e b p a g e s c h a n g e in t o d y n a m i c e p a g e s , w h i c h a r e d r i v e n b y d a t a b a s e , a n d t h e d e v e l o p m e n t e n v i r o m e n t c a n b e s e p a r a t e d fr o m t h e u s i n g e n v i r o n m e n t . t h e m a i n s t u d y w o r k o f t h i s p a p e r i s as f o l l o w s : we s t u d y t h e f o u r k e y t e c h n o l o g i e s o f t h e w e b - d a t a b ase d e v e l o p m e n t a n d d e s i g n : w e b - d a t a b a s e s y s t e m a r c h i t e c t u r e ; t h e i n t e r f a c e t e c h n o l o g y o f w e b a n d d a t a b a s e ; t h e c o m b i n a t i o n o f w e b - d a t a b as e d e s i g n a n d o o a d t e c h n o l o g y ; t h e s a f e t y o f t h e w e b - d a t a b ase . a ft e r t h o r o u g h l y s t u d y i n g t h e s e f o u r t e c h n o l o g i e s , w e c h o o s e a d e q u a t e t e c h n o l o g i e s a n d s u c c e s s f u l l y d e v e l o p t h e o n l i n e s c i e n c e m a g a z i n e f o r mi n i s t ry o f e d u c a t i o n b y u s i n g t h e s e t e c h n o l o g i e s . t h e o n l i n e s c i e n c e m a g a z i n e f o r mi n i s t ry o f e d u c a t i o n i s a t h r e e l a y e r s w e b d a t a b a s e s y s t e m . t h e g o a l o f t h e p r o j e c t i s t o p r o v i d e a p l a t f o r m f o r p a p e r r e le a s e a n d i n t e r c o m m u n i c a t i o n , a c c e l e r a t e t h e e x c h a n g e o f i n f o r m a t i o n , a n d p r o m o t e t h e l e v e l o f s c i e n c e s t u d y . t h e m a i n c o n t e n t o f t h i s p a p e r i n c l u d e s : 1 , t h e a r c h i t e c t u r e o f we b d a t a b ase i n c l u d e s t wo l e v e l s a n d t h r e e l e v e l s . o u r s y s t e m u s e s t h e t h r e e l e v e l b / s / s a r c h i t e c t u r e . 2 , w e a n a l y z e d t h e in t e r f a c e t e c h n o l o g y f o r t h e w e b d a t a b a s e , o u r s y s t e m a d o p t t h e w e b d a t a b as e a c c e s s i n g t e c h n o l o g y b as e d o n j a v a s u c h a s j s p , j a v a b e a n a n d j d b c , a n d w e u s e o r a c l e 9 i d a t a b a s e as t h e b a c k g r o u n d d a t a b a s e . w e r e a l i z e t h e s e p a r a t i o n o f p r e s e n t a t i o n l a y e r , b u s i n e s s l o g ic l a y e r , a n d a p p l i c a t i o n l a y e r . 3 , w e u s e t h e o o a d ( o b j e c t o r ie n t e d a n a l y s i s a n d d e s i g n ) t h e o ry a n d m e t h o d i n t h e s y s t e m d e s i g n . 4 , b e c a u s e w e b d a t a b a s e i s r u n n in g u n d e r t h e o p e n e n v i r o n m e n t , w e a l s o s t u d y t h e p r o b l e m o f th e w e b d a t a b as e s a f e t y . a n d w e s e c u r e o u r s y s t e ms s a f e t y i n m a n y w a y s . t h e m a i n c o n t r i b u t e s o f t h is p a p e r i n c l u d e s : 1 、g i v e t h e f o u r b as i c t e c h n o l o g i e s o f w e b d a t a b s as e a c o m p l e t e s t u d y , c o m p a r a t i o n a n d s u m e r iz a t i o n . a n d g i v e a d e t a i l e d i n t r o d u c t i o n a n d a n a l y s i s a b o u t t h e v i t u e a n d t h e s h o rt c o m in g o f t h e s e t e c h n o l o g i e s . 北京交通大学硕士 研究生学位论文 t h e r e f o r e , w e p u t a u s e f u l t h e o r e t i c f o u n d a t i o n f o r l a t e r we b d a t a b a s e d e v e l o p m e n t . 2 . w e a p l l y t h e o o a d t e c h n o l o g y t o t h e w e b d a t a b s e s y s t e m d e s i g n , a n d u s e t h e c a s e m a n a g e m e n t m e t h o d o f s o ft w a r e e n g i n e e r i n g . u n d e r t h e h e l p o f r a t i o n a l r o s e 2 0 0 2 , w e g e t a u s e f u l m e t h o d a n d fl o w s h e e t f o r w e b d a t a b a s e s y s t e m d e s ig n . 3 . d u r i n g t h e c o d i n g p e r i o d , w e s t r i c t l y o b s e r v e t h e t h r e e l e v e l s a r c h i t e c t u r e , a n d u s e t h e o o p t e c h n o l o g y , w h i c h e ff i c i e n t l y i m p r o v e t h e fl e x i b i l i t y a n d m a i n t e n a b i l i t y o f t h e p r o g r a m . i t i s a u s e f u l r e f e r e n c e f o r o t h e r s i m i l a r w e b d a t a b a s e d e v e l o p m e n t . k e y w o r d s : we b d a t a b a s e a r c h i t e c t u r e j s p o b j e c t o r i e n t e d o o a d s y s t e m s a f e t y 一 i v . 北京交通大学硕士研究生学位论文 第一章 绪论 1 . 1 we b 的 起源和发展 w o r ld w i d e w e b ( w ww ) 也称w e b , 中 文翻译成万维网, 简称w e b 。 首 先要着重指出的是,wo r l d wi d e w e b 并不等于i n t e r n e t 。从字面意义上看, i n t e r n e t 是一个网络,而 we b则不仅仅是个网络,而是一组分布式通信应 用程序和系统软件。在we b 之前i n t e rn e t 上的信息只有文本形式。we b 将 图形、音频、视频信息集合于一体。 随着i n t e r n e t 的普及和发展, w e b 也迅速繁荣起来。 1 9 9 2 年之前, w e b 还没有什么影响力, 但是到了1 9 %年, 它己经占据i n t e rn e t 传送总量的2 5 %, 遥遥领先于其他各项i n t e r n e t 月 民 务. 曾经是i n t e rn e t 龙头的f t p己退居第二, 传统的文件传送服务正在逐渐萎缩。 其他的i n t e rn e t 月 民 务除e m a i l 外均处于 下降趋势。 随着越来越多的公司、网络以及国家进入i n t e rne t , 越来越多的 用户会通过浏览器浏览w e b ,它的地位还会变得越来越重要。 w e b的迅速增长的根本原因在于:w e b以简单的操作方式统一了 i n t e rn e t 和技术领域, 甚至可以 涵盖其他的i n t e rn e t 服务。 i n t r a n e t 的崛起也 推动了w e b 的进一步发展。 i n tr a n e t 利用i n t e rne t 特别是 w e b 的相关技术建 立企业内部网,使 we b飞速进入商业领域,成为最重要的信息发布工具之 作为一组软件和协议组成的开放式信息系统,w e b 具有以下特征: 它通常驻留在i n t e rn e t 主机和客户机上。 它能理解 h t ml语言。 它采用客户柳服务器的双向通信、信息收集和资源服务模式 允许客户程序使用h t t p , f t p . t e ln e t 和g o p h e r 等各种协议来访 问服务器。 通过统一资源定位器 ( u r l ) 进行文档和资源访问。 允许客户程序访问由各种多媒体类型如文本、 音频和视频数据组成 的信息。 简而言之,w e b是一个基于 i n t e r n e t 的、全球连接的、分布式的、动 态的、 多 平台的 交互式超媒体信息系统。 从技术角度上说, w e b 是i n t e rn e t 上那些支持t c p i i p和h ttp的客户机与服务器的集合, 它允许用户在一台 计算机上通过i n t e rn e t 存取在世界各地的计算机系统中的信息。 1 .2数据库技术的历史和发展 数据库技术发展到今天已经是一门成熟的技术,大致说来,数据库可 北京交通大学硕士研究生学位论文 以定义为以某种方式组织起来的可以 检索和利用的信息的集合。它的基本 特征之一是相互关联的数据的集合,它用综合的方法组织数据,具有较小 的数据冗余, 可供多个用户共享, 具有较高的数据独立性和安全控制机制, 能够保证数据的安全、可靠,允许并发的使用数据库,及时、有效的处理 数据,并能保证数据的一致性和完整性。 数据库技术起始于6 0 年代中期。 到6 0 年代末7 0 年代初, 数据库技术 已日益成熟, 并有了坚实的理论基础。 到了7 0 年代, 数据库技术有了很大 的 发展。 数据库方法, 特别是d b t g( 数 据库任务d a t a b a s e t a s k g r o u p ) 方法和思想已应用于各种计算机系统,出现了许许多多基于网状模型和层 次模型的商品化数据库系统。随后,关系方法的理论研究和软件系统的研 制又取得了很大成果,关系方法也从实验室走向了社会。随着商业系统的 运行,特别是关系数据库商用产品的出现,数据库技术被日益广泛的应用 到各个方面, 成为实现和优化信息系统的 基本技术。 数据管理是数据库的核心任务,内容包括对数据的分类、 组织、 编码、 存储、检索和维护。随着计算机硬件和软件的发展,数据库技术也不断的 发展。从数据管理的角度看,数据库管理到目 前共经历了人工管理阶段、 文件系统阶段和数据库系统阶段。 人工管理阶段是指计算机诞生的初期 ( 即2 0 世纪5 0 年代后期之前) , 这个时期的计算机主要用于科学计算。从硬件看,没有磁盘等直接存取的 存储设备:从软件看,没有操作系统和管理数据的软件,数据处理方式是 批处理。 文件系统阶段是指计算机不仅用于科学计算,而且还大量用于管理数 据的阶段 ( 从5 0 年代后期到6 0 年代中期) 。 在硬件方面, 外存储器有了磁 盘、磁鼓等直接存取的存储设备。在软件方面, 操作系统中己 经有了专门 用于管理数据的软件,成为文件系统.在处理方式上,不仅有了文件批处 理,而且能够联机实时处理。 数据库系统阶段是从6 0 年代后期开始的。 在这一阶段中, 数据库系统 解决了人工管理和文件系统的弊端,它把数据的定义和描述从应用程序中 分 离出 去, 程序对数据的 存取全部由 数据库 管理系 统( d b m s ) 统一管理, 从 而保证了数据和程序的逻辑独立性。这样, 数据就可以 共各种用户共享切 具有最小的冗余度。 按照数据模型发展的主线,数据库技术的发展可分为:第一代数据库 系统层次和网状数据库管理系统; 第二代数据库系统关系数据库 管理系统 ( r d b ms ) ; 第三代数据库系统面向对象的数据库管理系统。 怪 1 .3 i n t e r n e t 对数据库提出的 挑战 北京交通大学硕士研究生学位论文 i n t e rn e t 的发展为传统的数据库提出了 新的要求:首先, 对数据库的 吞 吐量提出了新的要求,要求数据库服务器在单位时间内要能处理更多的用 户请求。i n t e m e t 与传统的主机/ 终端或客户/ 服务器的一个主要区别在于客 户访问的不可预测性;可能在一个小时内只有几个对数据库的访问请求, 也可能在一分钟内有成千上万个访问请求,因此要求数据库服务器必须能 够较好的处理这种不可预测性。 在i n t e r n e t 环境中, 数据库服务器不仅要服务于外部用户 ( 如企业的客 户) ,而且要能够服务于内部用户 ( 如企业的领导和员工) ,并且应该能根 据用户的级别来设定不同的处理优先级,对于级别高的用户 ( 比如企业内 部的领导) ,数据库服务器应优先满足其对数据库的访问请求。 对通过i n t e rn e t 访问数据库的用户可能无法进行培训, 并且, 不易对用 户进行有效的控制,因此需要防止用户的误操作或恶意操作导致数据库服 务器的阻塞甚至死机。除了在编程时予以考虑外,还应在数据库服务器中 加以预防。 在i n t e rn e t 环境下, 数据库面临的另一挑战是对系统高可用性的要求。 所谓高可用性,既包括减少数据库服务器意外停机的时间,也包括减少服 务器计划停机时间,例如对数据库进行备份、恢复等操作导致的停机。其 实,对系统高可用性的要求也一直存在,尤其是在金融、电信等领域,但 随着i n t e rn e t 的发展, 普通的数据库用户对高可用性的要求也提出了更高的 要求,这是由于i n t e rne t 是一个全球的网络,每天2 4 小时随时都有用户访 问, 如果数据库服务器经常停机, 势必影响用户对企业站点的访问: 此外, 随着电 子商务的 普遍应用,也对数据库提出了 更高的可靠性要求。 数据库还需要支持h t ml , x ml . h t ml和x ml都是标记语言。 x m l 比h t ml更加完整和规范,而且允许根据应用来定义标记符。x ml很有 可能成为i n t e rn e t 上的标准,因此许多数据库厂商正在努力支持x ml 。这 包括以下需求:由存储在数据库中的数据生成 x m l格式的文本和数据存 储到数据库中。 在全球的】 n t e m e t 网络中, 存在着各种平台的计算机, 因此跨平台的互 相操作一直是一个重要问题。 此外, 由于i n t e rn e t 是开放的, 因此安全性一 直是一个突出的问题。 数据库技术不仅仅包括数据库服务器本身,因为最终用户关心的是整 个应用系统是否能够有效的满足自己的需求,因此从广义上说,以数据库 服务器为核心的整个应用系统 ( 包括整体结构和开发模式)也是数据库技 术的一个重要方面。 舒.4 we b 数据库技术的 起源与发展 北京交通大学硕士研究生学位论文 随着w e b中信息量的不断增加,以 文件的形式进行存储的系统的速度 受到越来越大的影响。 同时因为w e b 的应用领域的不断扩展, 静态的w e b 页面越来越不能满足人们对w e b 上信息服务的动态性、 实时性和交互性的 要求。另一方面,数据库技术经过几十年的发展,已经非常成熟和完善。 为了进行网络上数据的高效存取,实现交互式动态 we b 页面,就必须以大 量数据资源为基础, 因此必然要在w e b中引入数据库技术。 we b 技术和数 据库技术的结合不仅把 w e b 和数据库的优点集中在了一起, 而且充分利用 了大量先有的数据库信息资源, 使用户可以方便的在w e b 浏览器上检索和 浏览数据库内容。 舒.4 . 1什么是we b 数据库 w e b 数据库是指将 w e b 服务和数据库结束互相融合的系统, 用户可以 使用与平台无关的w e b 浏览器通过该系统获得在线信息。 w e b 数据库集合 了we b 技术和数据库技术的优点, 使二者都发生了质的变化: we b网页从 静态网页发展成了由数据库驱动的动态网页,而数据库实现了开发环境和 应用环境的分离。 与普通数据库系统一样,we b 数据库也是个数据存储库或信息库,你 可以通过查询语言或编程a p i 来访问它。但是,与普通数据库系统不同的 事, 对于we b 数据库来说,这种访问通常不使用键入命令行的指令,或者 通过为特定的计算机平台定制的界面来进行.w e b 数据库是通过其他w e b 应用程序、 用标准化的h t ml 标记或某些特定的扩展标记开发的特殊形式 的应用程序来访问数据库。 w e b 数据库在体系结构、访问方式、访问的用户这些方面和传统的数 据库也不同。 舒. 4 .2 we b 数据库的发展 w e b 数据库发展到现在,共经历了3 个发展阶段: 第一代 we b数据库在用户请求之前就己 经预先准备好静态 h t ml的 页面, w e b 服务器把h t m l 的页面返回 给用户, 不做其他任何的事务。 采 用这种简单的机制可以方便容易的建立共享文档的网站。这种网站不要求 和数据库的通信, 基本只是we b 技术, w e b 服务器只是一个h t t p 服务器, 仅适合一些规模较小的系统。 这种模式下的w e b 数据库存在不实时的缺点: 当数据库内部信息更新时,必须同时修改相应的静态文件,从而导致数据 库维护工作量很大。 第二代we b 数据库提供静态访问和动态内容应用, 实现基于数据库的 动态文档的管理和访问。为了实时动态的将数据库的信息反映在页面上, 必须使数据库与we b 服务器直接通信, 这就需要使用c g i 编程。 在第二代 北京交通大学硕士研究生学位论文 w e b 数据库中c g i 技术根据数据库的内 容自 动更新有关部门的 静态页面, 提供给最终用户。 用户访问的是静态的h t ml文档, 但文档内容是随着数 据库而改变的动态内容。 第三代we b 数据库在第二代w e b 数据库的基础上增加了联机事务处理 ( o l t p )能力,在 w e b客户端和服务器端实现了动态的交流。随着 w e b 数据库的不断发展,简单的c g i 程序演变成为具有强大功能的数据库应用 服务器, 应用服务器既有面向w e b 服务器的借口, 又有面向数据库服务器 的借口。 当w e b 服务器接收到w e b 客户方文动态数据内容的请求, 需要和 数据库连接的时候, 就能够通过应用服务器建立起数据库服务器和w e b 服 务器之间的连接,这种联机让we b 客户可以完成o up功能,即插入、 更 新和删除数据库。 随着 w e b技术、分布式对象技术以及安全保密技术的发展,为了在 w e b 上实现电子商务,w e b 技术发展,关键的难题是如何实现时实的事务 处理、可伸缩性、可扩展性、安全性和客户认证等。we b 对象技术通过分 布和对象技术允许客户机直接同相关服务器连接, 避免了w e b 服务器所形 成的瓶颈。并且从单个功能服务器到整个服务器系统都可以伸缩的运行到 一个或多个服务器上,动态的平衡客户端请求负载。这些技术的突破能有 效的解决在w e b 上进行是时刻伸缩的事务处理。 总之,we b 数据库是动态网站开发的核心技术,也是实现电子商务的 基础技术之一。 1 .5本文的主要工作 本文针对 w e b数据库系统 ( w e b d b s )的几个关键技术:w e b d b s 的体系结构、w e b与数据库的 接口 技术、w e b数据库系统设计与 o o a d ( o b j e c t o r ie n t e d a n a ly s is a n d d e s i g n ) 的 结 合、 w e b 数 据 库系 统的 安 全 性 进行了研究, 并设计实现了 一个具体的w e b d b s 系统集成方案: 基于w e b 的教育部在线科技期刊系统。 第二章讨论了w e b d b s 的 体系结构。 w e b 和数据库技术结合之后, 体 系结构产生了新的变化。w e b d b s的体系结构可以分为两层和三层结构。 本章详细介绍了这些变化和具体的结构形式的优缺点,并分析了为了应对 这种变化而在服务器和客户端所做的相应的扩展程序。 第三章讨论了we b 与数据库的接口技术。 首先分析和比较了几种目前 比较流行的w e b 数据库访问 技术, 然后介绍了一下中间件技术和客户端技 术,最后是部分数据库厂商的解决方案。 第四章讨论t w e b 数据库系统设计与o o a d ( o b j e c t o r i e n t e d a n a ly s i s a n d d e s i g n )的结合。介绍了o o a d技术、 u m l 技术和他们在w e b 数 据 北京交通大学硕士研究生学位论文 库系统设计中的作用。 第五章对w e b 数据库的安全性问题进行了简单的讨论。 由于w e b 数据 库的特点, 所以安全性问题非常关键。 本章从w 比数据库的安全需求出发, 简单讨论了we b 数据库安全性设计时的一些问题. 第六章介绍了基于w e b的教育部在线科技期刊系统的详细设计方案, 在设计中采用了面向对象的方法. 第七章从表示层、 事务逻辑层和数据层三方面介绍了基于w比的教育 部在线科技期刊系统的实现,在编码阶段采用了o o p 方法。 北京交通大学硕士研究生学位论文 第二章 we b 数据库系统的体系结构 良好的系统体系结构是建立高效安全的w e b 数据库系统的第一步, 也 是最基本的一步。数据库系统的体系结构指的是带有数据库系统的计算机 系统中各组成部分之间的相互关系,它是硬件、软件、算法、语言的综合 性概念。研究数据库系统的体系结构就是要研究它的硬件分布和软件的功 能分配。数据库系统的体系结构与计算机体系结构密切相关,是随着计算 模式的发展而发展的。 从应用功能的角度,任何一个典型的应用系统都可以分为三个组成部 分:数据层、事务逻辑层和表示层。 1 、 数据层: 数据层保存了持久的数据, 提供对数据库中数据的存取、 修改查询的功能,保证访问数据的安全性、完整性和一致性。 2 、事务逻辑层: 事务逻辑层包含了专门的事物信息, 决定了如何进 行具体的数据处理。 3 、 表示层: 直接面向用户, 完成应用前端的人机界面处理, 实现与 用户的交互。 w e b 数据库技术直接导致了一些新的软件方法的出现,并以新的结构 组织这些软件。虽然这一技术还处于发展之中,但是己经出现了很多可靠 的软件种类和体系结构。程序开发人员必须研究这些新的体系结构和不同 的组成成分的区别,才能够很好的利用它们去解决不同的应用问题。 解. 1 we b 数据库的双层结构 在双层客户端用 及 务器结构中, 客户端直接和服务器通信,没有其他的 中介处理。这种双层结构在计算机局域网中是最常见的。客户端处理用户 界面表示,发送客户请求;服务器需要判断用户输入数据的正确性,接受 客户端的请求,执行数据库存取和更新,保持数据的完整性,控制和执行 事务逻辑,并给客户端发送数据.结构如图2 . 1 所示。 图2 . 1 w e b 数据库的双层结构 北京交通大学硕士研究生学位论文 妙. 1 . 1双层客户 服务 器 ( c / s ) 体系结构 c / s结构是以网络环境为基础, 将计算机应用有机的分布在多台计算 机中的结构。 如图2 .2 。 其中服务器负责数据的存储管理及文件服务, 而客 户机负责用户对数据或文件提出请求服务,由服务器把处理后的数据传送 给客户, 因此在网络中传输的仅仅是客户需要的那部分数据, 而不是全部, 这样就大大降低了网络数据的流量,使系统的性能有了较大的提高。c / s 方式增加了数据的共享能力, 用户只需在客户机上用标准的s q l 访问服务 器中的数据,便可很方便的得到所需的各种数据及信息。 网铭电跳 图2 .2客户服 务器结构 在基于c / s结构的数据库系统中, 数据层放在服务器一端,显示层放 在客户机一段, 应用层可以放在服务器或客户机上。 应用层放在服务器上, c / s 结构又称为“ 瘦” c l i e n t / “ 胖” s e v e r 结构,反之称为“ 胖” c l i e n t / “ 瘦” s e r v e r 结构。 存储过程是c / s 领域中使用最普遍的应用层的实现方案。把应用程序 的事务逻辑加以归纳处理, 封装成预编译的存储过程放在数据库服务器上, 前端界面程序和根据需求设计的触发器可以 请求调用相应的存储过程,而 被请求执行的存储过程在服务器上全速运行,性能优势非常明显,且易于 维护和修改。 c / s体系结构具有效率高、稳定性好、系统平台无关性、维护了数据 北京交通大学硕士研究生学位论文 完整性、 安全性高的优点。 但是在i n t e m e t 环境下, 基于c / s 体系结构的数 据库系统存在越来越多的缺陷: i 、系统可伸缩性差。 传统的两层c / s 结构对于应用规则经常发生改变 的情况不具有良 好的灵活性。 2 、安全性差。 在传统两层c / s 结构中, 客户机直接面对数据库中的数 据, 当客户机提出请求时, 服务器通过触发器或是存储过程对数据 库使是相应的操作。而在i n t e rne t 环境下,由于其特有的通信速度 和安全性等原因, 是的c / s结构的数据库系统的安全性成为一个突 出的问题。 3 、安装维护困难。由于每个客户端都包含了独立于服务器的应用层, 所以位于每个客户端的应用层都必须单独维护。 由于用户界面不统 一,用户应用程序开发成本高。 4 、可移植性差。由于两层c / s的客户开发工具是高度专业化的, 将整 个系统从一种客户开发环境移植到另一种环境非常费时耗财, 因而 造成应用程序的移植性不够理想。 笋. 1 . 2双层浏览器/ 服务器 ( b / s ) 体系结构 基于c / s的模式, 在做了 进一步改进之后, we b 数据库技术采用了b / s 双层体系结构。 客户机上安装统一的用户界面w e b 浏览器, 而we b 服 务器提供数据的管理和存储, 这种w e b 浏览器于we b 服务器交互的数据处 理模式称为b / s 体系结构,如图2 .3 所示。在b / s 结构中,根据h t t p 和 we b 浏览器中提交的请求访问分布在各个we b 服务器上的信息, 实现了跨 平台访问计算机及其网络共享资源的功能。 客户请求:u r l we b浏览器w e b 服务器 返回h t ml页面 图2 .3浏览器/ 服务器 ( b / s )体系结构 b / s双层结构很好的解决了c / s双层结构中的表示层不统一的问题。 w e b浏览器是跨平台的,而且能够提供文本、图形、图像、视频和音频等 服务,是客户机用户界面的最好选择。 b / s结构具有用户界面统一、易于使用、维护简单、扩展方便、信息 共享度高的优点。 北京交通大学硕士研究生学位论文 那 .2 w e b 数据库的 三层结 构 w e b数据库的三层结构在客户端和服务器之间加入了一个中间层,如 图 2 .4所示。三层结构和双层结构相比,有一个明显的优势,它减轻了客 户端和服务器的工作负担,使它们都变成了“ 瘦”客户端和 “ 瘦” 服务器。 这意味着功能划分更加的深化,并可以获得更清晰的模块性。三层结构的 拥护者都认为事务处理应该是中间层的主要工作,其他的功能还包括把客 户端的请求传送给服务器,把服务器的数据库操作结果会送给客户端,保 证安全和进行认证。 图2 .4三层客户用 及 务器体系结构 歼.2 . 1 三层客户 服务器 ( c / s / s ) 体 系结 构 为了解决双层结构中存在的问题,人们在客户端和服务器之间加入中 间层。即应用服务器,从而提出了三层客户朋 及 务器体系结构。在c os 体 系结构中,整个系统由 三个部分组成:客户机、应用服务器和数据库服务 器。 客户机上只需要安装应用程序, 它负责处理与用户的交互和与应用服 务器的交互。应用服务器负责处理应用逻辑,具体地说就是接受客户机方 应用程序的请求,然后根据应用逻辑将这个请求化为数据库请求后与数据 库服务器交互,并将与数据库服务器交互的结果传送给客户机方的应用程 序。 数据库服务器软件根据应用服务器发送得请求进行数据库操作,并将 操作的结果传送给应用服务器。 c / s / s 结构的 模型如图2 .5 所示。 北京交通大学硕士研究生学位论文 d bm s ,数据存取模块 数据层 产 一 , 一 一 一, 卜 、 、卜 一 - 尸 产 数据库 一 一 兰1祥一一一一 功能屡 门卜一 一一一 图2 .5 数据库系统的c / s / s 体系结构 应用逻辑被所有用户共享是双层c / s结构与三层 c / s / s之间最大的区 别。中间层及应用服务器 ( w e b 服务器)是整个系统的核心,它必须具有 处理系统的具体应用而提供事务处理、安全控制以 及为满足不同数量客户 机的请求而进行性能调整的能力。 从应用功能上,可以将 c / s / s结构划分成表示层、功能层和数据层。 表示层是客户机上的用户接口 部分, 它担负着用户与应用间的对话功能。 它用于检查用户从键盘等输入的数据, 显示应用输出的数据。为是用户能 只管的进行操作,一般要使用图形用户接口 ( g u i ) ,该接口操作简单、易 学易用:功能层相当于应用的本体,它是将具体的业务处理逻辑的编入程 序中;数据层就是d b ms ,负责对数据库数据的编写,它必须能迅速的执 行大量数据的更新和检索。 使用 c / s / s结构应用软件开发系统的优点是非常明显的,主要有以下 几点: 1 .整个系统被分为不同的逻辑块, 层次非常清晰; 2 ,能够使 “ 胖客户机” 变成较 “ 瘦”的客户机: 3 .开发和管理的工作向服务器方转移,使得分布数据处理成为可能; 4 .管理和维护变的相对简单。 北京交通大学硕士研究生学位论文 5 . w e b服务器可以 被不同平台的客户访问,因此具有很好的可移植 性。在很大程度上节省了开发时间和资金投入。 6 . c / s / s结构有良 好的灵活性和可扩展性,对于环境和应用条件经常 变动的情况,只要对功能层实施相应的改变,就能够达到目的。 另外,引进三层结构体系,客户机便可省去与数据库系统直接互动的 麻烦。客户机直接调用服务器上的应用逻辑,应用逻辑则代表客户机对数 据库进行存取。 这样就可减少向 服务 器发出的s q l 查询和更新请求, 使性 能比双层结构更佳。此外,由于客户机不会直接连接的数据库系统,而服 务器能够实现更细致的授权定义,因此,三层结构能加强整体系统的安全 性。 总之, c / s / s 结构克服了 双层c / s 结构的缺陷, 具有可扩展性好、 安全 j性高、可管理性强、软件重用性好和易于开发维护的优点。 那. 2 .2 三层浏览器服务器 ( b / s / s ) 体系结构 将w e b 技术的b / s 结构与数据库系统的三层c / s / s 体系结构结合,产 生了w e b 数据库系统的浏览器/ w e b 服务器/ 数据库服务器 ( b / s / s ) 三层结 构体系。 如图2 .6 所示。 b / s / s 体系结构是指在t c p / i p 的支持下, 以h ttp 为传输协议, 客户通过浏览器访问w e b 服务器已经与之相连的后台数据库 的体系结构, 它由w e b 浏览器、 w e b 服务器、 中间件和数据库服务器组成。 在 b / s / s结构中,各组成部分之间通过 i n t e rn e t( 或 i n t r a n e t )相连,遵守 h t t p协议,浏览器通过发送请求和服务器端简历连接,从而实现以整个 i n t e r n e t 为背景的 数据存储和访问。 图2 . 6 we b 数据库系统的三层b / s / s 体系结构 b / s / s结构中的表示层安装了w e b 浏览器,向网络上的we b 服务器提 出服务请求, 接收w e b 服务器返回的页面并显示给用户。 事务逻辑层安装 北京交通大学硕士研究生学位论文 了w e b 服务器,它接受用户的请求并判断请求的类型。 如果请求的是一般 静态页面, 就直接在w e b 服务器的文件系统中找到页面并返回; 否则则执 行相应的应用程序,比如对数据库进行更新、查询等,随后获得数据库操 作的结果,将结果动态生成页面,返回给表示层的客户端。数据层则安装 了数据库服务,实现数据的存储、维护、访问和更新,它接受w e b 服务器 的数据操作请求,并把运行结果返回给w e b 服务器。 b / s / s 结构具有以下特点: 1 、基于t c p / i p开放式网络标准协议,完全实现了跨平台访问计算机 及其网络上的各种资源,具有很强的系统独立性和平台无关性。 2 、软件维护开销大大降低, 只需开发维护服务器应用程序, 无需开发 客户端程序。 规范和统一了客户端程序的标准w e b 浏览器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论