JDBC的四种连接方式
2014-03-11 20:59
232 查看
一:jdbc-odbc(jdbc-odbc桥)
Jdbc-odbc桥是sun公司提供的,是jdk提供的的标准api. 这种类型的驱动实际是把所有jdbc的调用传递给odbc ,再由odbc调用本地数据库驱动代码。
jdbc-odbc桥 ---- odbc---- 厂商DB代码 ----- 数据库Server
只要本地机装有相关的odbc驱动那么采用jdbc-odbc桥几乎可以访问所有的数据库,jdbc-odbc方法对于客户端已经具备odbc driver的应用还是可行的.但是,由于jdbc-odbc先调用odbc再由odbc去调用本地数据库接口访问数据库.所以,执行效率比较低,对于那 些大数据量存取的应用是不适合的.而且,这种方法要求客户端必须安装odbc 驱动,所以对于基于internet ,intranet的应用也是不合适的.因为,你不可能要求所有客户都能找到odbc driver.
二:db client(本地api驱动)
本地api驱动直接把jdbc调用转变为数据库的标准调用再去访问数据库.这种方法需要本地数据库驱动代码.
本地api驱动----厂商DB代码-----数据库Server
这种驱动比起jdbc-odbc桥执行效率大大提高了.但是,它仍然需要在客户端加载数据库厂商提供的代码库.这样就不适合基于internet的应用.并且,他的执行效率比起3,4型的jdbc驱动还是不够高.
三:base net pure java(网络协议驱动)
这种驱动实际上是根据我们熟悉的三层结构建立的. jdbc先把对数局库的访问请求传递给网络上的中间件服务器. 中间件服务器再把请求翻译为符合数据库规范的调用,再把这种调用传给数据库服务器.如果中间件服务器也是用java开发的,那么在在中间层也可以使用 1,2型 jdbc驱动程序作为访问数据库的方法.
网络协议驱动---------中间件服务器------------数据库Server
由于这种驱动是基于server的.所以,它不需要在客户端加载数据库厂商提供的代码库.而且他在执行效率和可升级性方面是比较好的.因为大部分功能实现 都在server端,所以这种驱动可以设计的很小,可以非常快速的加载到内存中. 但是,这种驱动在中间件层仍然需要有配置其它数据库驱动程序,并且由于多了一个中间层传递数据,它的执行效率还不是最好.
四:pure java native(本地协议驱动)
Type4 本地协议驱动
这种驱动直接把jdbc调用转换为符合相关数据库系统规范的请求.由于4型驱动写的应用可以直接和数据库服务器通讯.这种类型的驱动完全由java实现,因此实现了平台独立性.
由于这种驱动不需要先把jdbc的调用传给odbc或本地数据库接口或者是中间层服务器.所以它的执行效率是非常高的.而且,它根本不需要在客户端或服务 器端装载任何的软件或驱动. 这种驱动程序可以动态的被下载.但是对于不同的数据库需要下载不同的驱动程序.
Jdbc-odbc桥是sun公司提供的,是jdk提供的的标准api. 这种类型的驱动实际是把所有jdbc的调用传递给odbc ,再由odbc调用本地数据库驱动代码。
jdbc-odbc桥 ---- odbc---- 厂商DB代码 ----- 数据库Server
只要本地机装有相关的odbc驱动那么采用jdbc-odbc桥几乎可以访问所有的数据库,jdbc-odbc方法对于客户端已经具备odbc driver的应用还是可行的.但是,由于jdbc-odbc先调用odbc再由odbc去调用本地数据库接口访问数据库.所以,执行效率比较低,对于那 些大数据量存取的应用是不适合的.而且,这种方法要求客户端必须安装odbc 驱动,所以对于基于internet ,intranet的应用也是不合适的.因为,你不可能要求所有客户都能找到odbc driver.
二:db client(本地api驱动)
本地api驱动直接把jdbc调用转变为数据库的标准调用再去访问数据库.这种方法需要本地数据库驱动代码.
本地api驱动----厂商DB代码-----数据库Server
这种驱动比起jdbc-odbc桥执行效率大大提高了.但是,它仍然需要在客户端加载数据库厂商提供的代码库.这样就不适合基于internet的应用.并且,他的执行效率比起3,4型的jdbc驱动还是不够高.
三:base net pure java(网络协议驱动)
这种驱动实际上是根据我们熟悉的三层结构建立的. jdbc先把对数局库的访问请求传递给网络上的中间件服务器. 中间件服务器再把请求翻译为符合数据库规范的调用,再把这种调用传给数据库服务器.如果中间件服务器也是用java开发的,那么在在中间层也可以使用 1,2型 jdbc驱动程序作为访问数据库的方法.
网络协议驱动---------中间件服务器------------数据库Server
由于这种驱动是基于server的.所以,它不需要在客户端加载数据库厂商提供的代码库.而且他在执行效率和可升级性方面是比较好的.因为大部分功能实现 都在server端,所以这种驱动可以设计的很小,可以非常快速的加载到内存中. 但是,这种驱动在中间件层仍然需要有配置其它数据库驱动程序,并且由于多了一个中间层传递数据,它的执行效率还不是最好.
四:pure java native(本地协议驱动)
Type4 本地协议驱动
这种驱动直接把jdbc调用转换为符合相关数据库系统规范的请求.由于4型驱动写的应用可以直接和数据库服务器通讯.这种类型的驱动完全由java实现,因此实现了平台独立性.
由于这种驱动不需要先把jdbc的调用传给odbc或本地数据库接口或者是中间层服务器.所以它的执行效率是非常高的.而且,它根本不需要在客户端或服务 器端装载任何的软件或驱动. 这种驱动程序可以动态的被下载.但是对于不同的数据库需要下载不同的驱动程序.
相关文章推荐
- Spring事务之二(JDBC连接数据库的四种方式)
- JDBC连接DB2的四种类型的驱动方式
- JDBC连接数据库的四种方式:DriverManager,DataSource,DBCP,C3P0
- android开发第七天网络连接的四种方式
- 不同数据库jdbc连接方式
- 关于数据库连接池创建(楼主采用JDBC+ODBC桥接方式连接数据库)
- python中字符串连接的四种方式
- jdbc连接各种数据库方式列表
- JDBC纯驱动方式连接MySQL
- 四种jdbc链接方式
- 四种常见数据库的连接方式:Mysql,Oracle,SQLserver,ACCESS
- Oracle SQLPlus 在连接时通常有四种方式
- VirtualBox的四种网络连接方式详解
- 数据库的四种连接方式
- hive的jdbc连接方式精简依赖jar包
- 转!!各种数据库的jdbc驱动下载及连接方式
- Matlab 通过JDBC方式连接Sqlserver数据库
- Win7下java用JDBC方式连接mysql
- JDBC纯驱动方式连接MySQL
- JDBC几种连接方式