Web数据库中间件技术

rcffmysu602249

rcffmysu602249

2016-01-29 16:12

Web数据库中间件技术,Web数据库中间件技术
  Web数据库中间件技术
曾晓金

  

(云南工业大学计算机应用重点实验室 昆明 650051)



摘要:介绍了Web数据库的几种中间件解决方案,并比较了它们的特色与不足,以及Web数据库出现的相应最新技术。

关键词:中间件 CGI ASP ISAPI NSAPI JDBC



随着Internet/Intrranet的兴起与发展,Web服务器与数据库服务器的连接显得越来越重要,许多厂家不断推出新技术、新产品,使得连接更加简洁、迅速和方便。Web与数据库连接技术已成为基于Web的信息管理系统的核心,为Internet上的电子商贸打下了基础。

一般来说,通过Web页实现对数据库访问的基本框图如图1,在整个系统中关键的技术是中间件的解决方案。



图1、Web页面访问数据库示意图



中间件负责管理Web服务器和数据库服务器之间的通信并提供应用程序服务。由于驻留在Web服务器上,因而中间件软件能够调用作为Web服务器和数据库服务器间"传输机制"的外部程序或"编码",并将执行查询等以HTML页面或纯文本的形式将信息返回给最终用户。数据库服务器负责管理驻留在数据库服务器中的数据。



一、现对当前几种流行的中间件的解决方案作一讨论。

1.通用网关技术(CGI)

CGI是一种Web站点上可以用来访问Web站点的用户交互的各种程序的标准,使用CGI脚本允许用户在浏览器中等服务器上的数据库交互,完成对数据库的各种操作。

几乎使用的服务器软件都支持CGI,开发者可以使用任何一种Web服务器内置语言编写CGI,包括Perl语言,C,C++,VB和Delphi等。

CGI的工作原理是浏览器通过Web页面的表单搜索参数,这些参数通过HTTP传递Web服务器,在服务器通过CGI脚本分析参数(命令行参数或环境变量),同时启动通路程序,把分析后的参数转化为SQL命令,交数据库服务器执行,然后CGI程序返回处理结果给Web服务器,最后向客户机返回HTML或纯文本格式的结果并断开连接。

CGI缺点是执行速度较慢,Web服务器每启动一个数据查询服务,就必须启动一个新的CGI进程,相对服务器资源代价比较高。

2.ASP(Active Server Pages)

ASP是一种开放的,可以将HTML脚本及可重用的Active Server组件结合在一起以建立高效的动态的基于Web的应用程序环境,利用ASP,可以增加运行在服务器端的脚本的新特性,如访问数据库。

ASP支持Active Server组件的使用,Active Server组件通过组件对象模型(COM)为ASP提供了可编程的界面,其中组件之一Active Data Object(ADO)提供了与数据库相连的机制。且使用ASP可以直接在HTML文件中包含可执行的脚本,HTML开发和脚本开发可以变为一个过程,而不象CGI、ISAPI以及其他方法一样,程序和HTML文件要求在不同的设计环境导致程序产生和修改困难。

3.应用编程接口(API)

鉴于CGI的一些缺陷,Microsoft和Netscape开发了专用的Web服务器中的程序代码(如动态链接库DLL),且一般与Web服务器软件处在内存的同一地址空间中,因此每次调用时是在内存中运行相应的程序段,而不是像CGI那样需要启动新的进程,因而效率要比CGI高得多。

API技术主要缺点是开发难度大,且可移植性差,开发出的应用程序只能在相应的Web服务器上运行,缺乏通用性。

为了减轻开发应用程序的困难,Netscape和Microsoft在其各自的服务器中提供了基于API的编程接口。Netscape提供了基于NSAPI的Livewire,它是专门设计的全面开发方案,开发人员可以开发和管理WWW界面、WWW网点,并且可以利用SQL语句或ODBC直接访问数据库。Microsoft则提供了基于ISAPI的IDC模块,它是IIS的一个动态连接库(httpodbc.dll),并通过ODBC访问各类数据库。

4.JDBC技术

Java是一种简单、面向对象、易传送、稳固安全、多线程执行控制及3D空间设计的语言,它为Internet注入了交互性。Java支持数据库的访问,是因为SUN公司提供了一种标准的SQL访问数据库的Java语言应用程序编程接口(JDBC)。构成Java语言的基础是一系列类库,而JDBC正是定义了Java与数据库之间的接口类库(Java.sql包),它是Java语言中执行SQL语句的API,它由一系列类和接口所组成,这些类和接口均是由Java语言写成的,通过它一个程序开发者可以在Java语言中建立与数据库的链接,执行SQL语句和处理SQL语句返回的结果。

采用JDBC很容易用SQL语句访问异构数据库,如通过JDBC API,只需编写一个JDBC API,就可以把SQL查询语句送往Sybase,Oracle或 Informix数据库,同时采用Java语言编写应用程序,具有平台无关性,不要为不同的平台编写不同的应用程序。



图2、JDBC技术工作示意图



采用JDBC技术其工作方式为:客户端首先访问Web服务器,下载Java字节码文件,并将Applet相关类的字节码文件和JDBC接口字节码文件下栽到客户端,然后与Web服务器脱离,接着Applet根据数据库地址,端口号和帐号与数据库服务器连接进行交互,这样用户与数据库服
展开更多 50%)
分享

猜你喜欢

Web数据库中间件技术

SQLServer
Web数据库中间件技术

Oracle数据库及中间件中型企业应用分析

编程语言 网络编程
Oracle数据库及中间件中型企业应用分析

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

ASP技术访问WEB数据库

ASP
ASP技术访问WEB数据库

优化Web数据库页面

ASP
优化Web数据库页面

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

中间件:Oracle首推插座式SOA套件

编程语言 网络编程
中间件:Oracle首推插座式SOA套件

MySQL数据库技术(13)

编程语言 网络编程
MySQL数据库技术(13)

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

讨论: SELECT TOP N 问题

讨论: SELECT TOP N 问题

sql2k增加的Function的sqlbook的帮助

sql2k增加的Function的sqlbook的帮助
下拉加载更多内容 ↓