




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 基于web的数据库访问技术 李晓杰【摘要】基于web的数据库访问技术,在各具体业务应用与底层用户数据库间建立一种可扩展、可移植,具有较强伸缩性的统一的对外接口,以有效地支撑业务网络应用。【关键词】web;数据库访问技术1.引言在三层c/s中应用程序访问数据库服务器都需要一定的数据访问技术的支持。从总体上数据访问技术可以分为数据访问接口和数据访问对象两部分 ,两者之间的关系如图1所示。图1 数据访问技术关系图数据访问接口:提供一组标准化接口(数据库引擎),允许应用程序访问不同类型的数据库管理系统。如odbc,jdbc,ole db等;数据访问
2、对象:提供用于通过数据库访问接口访问数据库管理系统的通用标准对象,不受应用程序开发语言的限制,实现对数据库的连接、增加、删除和查询等操作。如常见的有dao,rdo,ado,ado.net等对象模型。在数据访问技术研究初期,不同的数据库厂商都会提供不同的数据访问接口,开发人员需要针对不同的數据库管理系统(dbms)学习不同的专用数据库访问技术,比如 db2系统的 cli library、oracle 的 oci library等。这对开发人员造成了极大的困惑,使得数据库应用程序的开发很困难,影响开发进度;而且所开发的应用程序局限性很大,严重依赖于数据库平台,不利于应用程序的跨数据库平台移植。2.
3、通用基于web数据库访问技术信息化时代,网络和信息管理高速发展,数据库技术日臻成熟,功能日趋完善,而网络和数据库之间的关联与应用日益紧密,用户对信息的要求随之也要达到高标准的实时性与交互性,因此web服务器与数据库技术的结合显得格外重要。数据库访问中间件技术出现一改传统两层结构,采取c/s三层结构,充分发挥了web技术和数据库技术二者结合的综合优势与潜力,提高了性能、访问效率和安全性。常见的基于web的数据库访问技术分为以下几种:2.1 cgi技术cgi即通用网关接口,是web服务器与应用程序交互传递信息的一种标准接口。cgi的工作原理是客户端浏览器通过url向web服务器提出请求,服务器的守
4、护进程将此请求传给相应cgi程序进行处理,然后cgi将处理结果返回客户端浏览器。cgi优点:通用性强,基本支持所有http服务器,交互能力强,跨平台性能极佳,操作简单灵活。cgi缺点:应用程序通常独立执行,客户共享性差,内存资源占用率高,执行速度相对慢,运行效率偏低。另外cgi不具备事务处理的功能特点,使得其应用受到一定限制。2.2 webapiapi是应用编程接口,它是数据库程序的关键组件,每种数据库一般都带有动态链接库,同时也配置专属调用接口。针对cgi缺点,web服务器供应商们开发了各自专用web服务器的api应用编程接口,目前比较流行的是微软开发的isapi和netscape开发的ns
5、api。netscape同时提供专门设计的livewire,它是全面开发方案,研发人员可开发管理www网点和www界面,可使用sql语句或odbc来直接访问相关数据库;microsoft的isapi以dll形式提供,是动态连接库,通过odbc访问相关数据库,主要以idc文件形式发送。webapi工作原理是通过web交互式主页获取用户请求,然后提交服务器后端处理。优点:运行效率较高,资源可高效分配使用。缺点:开发难度大,可移植性差,应用程序运行环境严格,缺乏通用性。2.3 odbcodbc即开放数据库互连,是微软创建的一个有关数据库的通用标准接口。odbc的工作原理是web服务器通过odbc向数
6、据库发出sql请求,属于标准sql查询,数据管理系统在执行sql查询后将结果传回web服务器。odbc组成部件包括 application、administrator、driver manager、odbc api、odbc驱动程序dll、数据源。优点:能用统一方式处理所有类型数据库。因生成的程序相对独立,故开发人员无需了解产品细节即可编写程序,提供极大的方便性。缺点:访问方式较慢,使用范围受限制。2.4 ole_dbole_db全称对象连接和嵌入数据库,是微软开发的应用程序接口,ole db基于odbc之上建立, 访问对象范围更加广泛,包括关系数据库和非关系数据库。ole在实现桌 面应用程
7、序集成的同时,还定义实现了一种连接机制,允许应用程序作 为软件对象彼此进行连接。ole db的数据库操作模型由客户与服务器组成,客户指应用程序,通过ole db接口数据源进行访问与控制;服务器是提供ole db接口的软件组件,按照提供的内容可分成服务器提供程序和数据提供程序。ole db包括一组com接口,分别对应各种类型的数据库管理系统。构成ole db的每一个组件是一个com对象,每个组件分别输出一系列接口。ole db的组件组成有:枚举器、数据源对象、会话、事务对象、命令对象、行集、错误对象。ole db优点是 访问速度高,效率高。2.5 jdbcjdbc是java数据库连接,java提
8、供的一种标准应用程序编程接口,jdbc定义了java与数据库之间的一系列类和接口,均由java语言编写。数据库开发人员可通过它用纯java语言编写完整的应用程序,建立与数据库的链接,并且将执行处理的sql语句非常方便地传送至各种数据库。jdbc写的程序能够自动将sql语句传送给相应的数据库管理系统,不必为每种数据库的平台编写不同的程序。jdbc对数据库访问的过程是:请求与数据库建立连接,向数据库发送sql请求,为结果集定义存储应用和数据类型,查询结果,处理错误,控制传输,提交及关闭连接。简单点说就是用户通过web发出请求,通过jdbc接口连接数据库处理请求,然后再将结果返回用户浏览器。jdbc
9、 技术优势:可操作性强,可维护性强,使用效率高,安全性及事务处理能力高。3.专用网络数据库访问技术一般来说,每种数据库都具备专用web数据库访问技术,因其专用性故效率颇高。在数据库行业里,oracle 提供了行业领先的业务流程管理(bpm)和业务流程自动化(bpa) 产品,有助企业提高效率与可视性,积极推动实现卓越的客户服务与运营,并促进实现新一代的面向服务的soa体系结构的价值。因oracle 的极强优越性,现在通信行业的业务支撑系统都使用oracle数据库作为用户数据库。3.1 sql*net概述oracle数据库具有极强网络功能,它支持多种网络协议,如tcp/ip、x.25、spx/ip
10、x等,支持异种数据库互联、异种网络协议互联。sql*net是在oracle特有的tns技术上发展起来的网络中间件产品软件。oracle支持流行的c/s体系结构方式,使得应用与数据库核心分布处理,极大地提高了资源的利用率和处理效率。ct/s的server端安放oracle server;client端安放用户界面程序或oracle 的client端产品,如sql*plus;sql*net是oracle的网络软件,通过sql*net可以实现client与server的连接,sql*net是建立在某一网络协议之上的网络中间件产品。3.2 sql*net网络功能sql*net提供的网络功能包括网络透明
11、性、自动字符集转换、异种机网络、协议独立性、位置透明。网络透明性指在一个本地数据库基础上开发的应用,可以不必修改就分布到网络上去运行;自动字符集转换指两个通讯节点之间不同的字符集和国际语言支持数据描述可以通sql*net来管理;异种机网络指通过多协议转换来实现多种网络协议之间的互联;协议独立性是指在任何一台计算机上编制的应用,都可以不必修改就分布到任何协议的网络上去运行;位置透明是指通过位置透明的策略,可以使網络中的数据,如同放在单一本地数据库中一样使用,若数据分布发生变化,应用程序不必作任何修改。3.3 sql*net的c/s结构系统配置在客户/服务器结构下,通信的两端不论是客户端或服务器端
12、都需配置sql*net中介软件,服务器端在数据库主机上还需启动一个侦听程序(listener),以便能够不断侦听所有来自网络各地的客户端联机请求。侦听程序处理客户端联机请求的做法有以下类型:(1)专用服务器:当侦听程序受到一个客户端联机请求时,侦听程序新启动一个专用服务器程序负责服务用户程序的各项要求,并将执行结果传回给用户程序。整个通信过程,专用服务器程序与用户程序通过sql*net来对话。(2)多线程服务器:当侦听程序受到一个客户端联机请求时,侦听程序将用户程序连接到一个已预先启动的共享调度程序(shared dispatcher)上,此共享调度程序负责接受用户程序的各项要求,并将之放入要求队列,共享服务器从队列中取出数据加以执行,然后将执行结果放至响应队列中,同享调度程序再自响应队列中取得
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 玉米原材料采购合同范本
- 村委建设补偿协议书范本
- 禁止学生喝酒安全协议书
- 浦东同城厂房出租协议书
- 材料商玻璃采购合同范本
- 自建房套间出售合同范本
- 防晒服定制采购合同范本
- 注册人员聘用协议书范本
- 空压机节能方案合同范本
- 股东协议书与代持协议书
- 初中教师坐班管理制度
- 2025贵州省水利投资(集团)有限责任公司招聘84人笔试备考题库附答案详解(综合题)
- 页岩气储层表征评价技术进展及其未来发展趋势分析
- 统编版高中政治必修三《政治与法治》期末复习:选择题刷题练习题(含答案解析)
- 四人合伙养猪合同协议
- 保险公司考核工作方案
- 2024年辽阳职业技术学院单招职业倾向性测试题库附答案
- 配电网建设知识培训课件
- 护理实习生安全教育
- 医德医风警示教育
- 工程项目施工质量突发事件应急措施范例
评论
0/150
提交评论