日期:2014-05-16  浏览次数:20393 次

db2 jdbc连接方式
好久没有用过JAVA了,这些天由于工作的需要重抄旧业。由于之前一直没有用过JAVA连接DB2,今天测试了一下,感觉DB2没有其它数据好用,问题就在于DB2的连接方式太多了,容易搞乱。。
    DB2有4种连接方式,先抄一个来看一下吧
1.  Type 1 驱动程序:
          这类驱动程序的代码直接与高级本机 API 形成映射。JDBC 和 ODBC 是类似的 API,所以这种驱动程序常常与 JDBC-ODBC 桥联系在一起。
          这类驱动程序与 DB2 UDB 产品没有太多的关联。
2. Type 2 驱动程序:
          T2 驱动程序中有一个本机组件,该组件是驱动程序的一部分,但与数据访问 API 相分离。
          * 这个本机组件和 Java 组件一起构成驱动程序。
          * 对于 DB2 UDB,DB2 CLI 库包含本机组件。
3. Type 3 驱动程序:
          * 这是一个 Java 客户机,使用独立于数据库的协议进行通信。
          * 由于这种协议是独立于数据库的,这个优点使之适合于作为异构后端服务器的网关的中间件服务器。
4. Type 4 驱动程序:
          * 这类驱动程序是纯 Java 的,它实现了用于特定数据源的网络协议。
          * 客户机直接连接到数据源。

我试了两种方试:
TYPE2  CLI
注意CLI方式用的包是 sqllib/java/db2java.zip(要到安装的数据库目录下找,不要到网上下载,数据库的版本不一样会有问题的)
装载驱动程序和建立连接,需要三个基本步骤:

   1. 导入 JDBC 核心类(例如 import java.sql*)。
   2. 装载 JDBC 驱动程序 Class.forName (COM.ibm.db2.jdbc.app.DB2Driver)。
   3. 指定连接 URL: DriverManager getConnection jdbc:db2:database   。

TYPE4 纯 Java 方式:
  这里的包用的是db2jcc_license_cu.jar 和 sqllib/java/db2jcc.jar
  这里的URL用的是jdbc:db2://127.0.0.1:50000/database   ==这里的URL和CLI的不一样哦

到这里说一下网上说的COM.ibm.db2.jdbc.net.DB2Driver这个类我总是找不到,不在db2java.zip中。算了还是回到上面的问题吧,很明显TYPE2只能用到服务器端的(它的URL连个IP和端口都没有当然只能用于服务器端了),TYPE4主要是用于客户端的。
如果还需要帮助的可以看一下
http://publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp?topic=/com.ibm.db2.udb.dc.doc/dc/r_jdbcdrivers.htm
http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0512kokkat/