DB2的JDBC连接驱动与URL总结

简介:
 
依照 JDBC 规范,有四种类型的 JDBC 驱动程序体系结构
    Type 1:这类驱动程序将 JDBC API 作为到另一个数据访问 API 的映射来实现,如开放式数据库连通性(Open Database Connectivity,ODBC)。这类驱动程序通常依赖本机库,这限制了其可移植性。JDBC-ODBC 桥驱动程序就是 Type 1 驱动程序的最常见的例子。 
    Type 2:这类驱动程序部分用 JAVA 编程语言编写,部分用本机代码编写。这些驱动程序使用特定于所连接数据源的本机客户端库。同样,由于使用本机代码,所以其可移植性受到限制。 
    Type 3:这类驱动程序使用纯 JAVA 客户机,并使用独立于数据库的协议与中间件服务器通信,然后中间件服务器将客户机请求传给数据源。 
    Type 4:这类驱动程序是纯 JAVA,实现针对特定数据源的网络协议。客户机直接连接至数据源。
 
下面只讨论JDBC驱动连接DB2数据
 
第一种:通用连接方式
    驱动类:com.ibm.db2.jcc.DB2Driver
    JDBC连接URL:jdbc:db2://ServerIP:Port/databasename 
    说明:这种连接方式不需要DB2 V9开始分离出了客户端和服务器端,先前的版本没有单独的客户端软件,推荐使用这种连接方式。
 
第二种:客户端软件连接方式
    驱动类:com.ibm.db2.jcc.DB2Driver
    JDBC连接URL:jdbc:db2:<数据库在本地别名>
    说明:这种连接方式需要用户安装DB2客户端或者服务器端软件。然后利用DB2软件,连接到服务器上,并给所连接的数据库启一个别名,作为数据库表示,公给本地应用软件使用,这对本地软件来说是透明的。这适合小型局域网内。
 
下面给出两个连接实例
第一种:通用连接方式(推荐)
driverClassName="com.ibm.db2.jcc.DB2Driver"
jdbc:db2://192.168.0.2:50000/zfvims
DB2在windows下默认端口是50000
 
第二种:客户端软件连接方式
driverClassName="com.ibm.db2.jcc.DB2Driver"
url="jdbc:db2:zfvims"

有两种不同的方法可以区分 DB2 系统在内部最终会实例化哪个驱动程序
 
使用不同的 URL Pattern 来区分两种不同的驱动程序

Type 2 Driver URL Pattern:jdbc:db2:databasename
这当中 databasename 是需要访问的数据库名

Type 4 Driver URL Pattern:jdbc:db2://ServerIP:50000/databasename

这当中 ServerIP 是需要访问的数据库所在机器IP地址,databasename 是需要访问的数据库名,DB2 服务器会在默认端口 50000 上进行侦听。
 
使用连接特性来区分数据库连接是否会使用 DB2 本地客户机库,或者是使用JAVA 直接连接。 
DB2 UDB V8.1 新增加支持的这种 Type 4 驱动程序,常被称为“通用 JDBC 驱动程序”,是一种与驱动程序类型连通性或目标平台无关的抽象 JDBC 处理器,因此常用于进行分布式和本地 DB2 UDB 访问。因为“通用 JDBC 驱动程序”独立于任何特定 JDBC 驱动程序类型连通性或目标平台,所以它在一个 DB2 UDB 驱动程序实例中同时支持所有 JAVA 连通性(Type 4 驱动程序)和基于 JNI 的连通性(Type 2 驱动程序)。该驱动程序可以用于独立 JAVA 应用程序或多层应用程序,是开发人员一个不错的选择。


本文转自 leizhimin 51CTO博客,原文链接:http://blog.51cto.com/lavasoft/11196,如需转载请自行联系原作者
相关文章
|
15天前
|
安全 Java 数据库连接
gbase8a JDBC常用特性-Kerberos认证方式连接
JDBC常用特性-Kerberos认证方式连接
|
16天前
|
Java 数据库连接 网络安全
JDBC常用特性-SSH隧道连接
JDBC常用特性-SSH隧道连接
|
4月前
|
Java 数据库连接
JDBC连接复习
JDBC连接复习
50 1
|
2月前
|
Java 关系型数据库 MySQL
mysql5.7 jdbc驱动
遵循上述步骤,即可在Java项目中高效地集成MySQL 5.7 JDBC驱动,实现数据库的访问与管理。
482 1
|
4月前
|
SQL Java 数据库连接
Java开发者必知:JDBC连接数据库的“三大法宝”
Java开发者必知:JDBC连接数据库的“三大法宝”
44 7
|
4月前
|
SQL Java 数据库连接
JDBC连接SQL Server2008 完成增加、删除、查询、修改等基本信息基本格式及示例代码
这篇文章提供了使用JDBC连接SQL Server 2008数据库进行增加、删除、查询和修改操作的基本步骤和示例代码。
|
4月前
|
SQL 存储 Java
完整java开发中JDBC连接数据库代码和步骤
该博客文章详细介绍了使用JDBC连接数据库的完整步骤,包括加载JDBC驱动、提供连接URL、创建数据库连接、执行SQL语句、处理结果以及关闭JDBC对象的过程,并提供了相应的示例代码。
|
4月前
|
存储 Java 开发工具
【Azure 存储服务】Java Azure Storage SDK V12使用Endpoint连接Blob Service遇见 The Azure Storage endpoint url is malformed
【Azure 存储服务】Java Azure Storage SDK V12使用Endpoint连接Blob Service遇见 The Azure Storage endpoint url is malformed
|
2月前
|
SQL 分布式计算 关系型数据库
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
110 0
|
2月前
|
SQL 分布式计算 关系型数据库
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
51 0