程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> JDBC連接DB2 數據庫解疑

JDBC連接DB2 數據庫解疑

編輯:DB2教程

本文為您介紹了JDBC連接DB2 數據庫的一些經驗之談,關於DB2 數據庫的JDBC連接文章有很多,比較出名的有諸如“JDBC數據庫連接大全”和“JSP的DB2 連接數據庫”,但還是有所纰漏,本文可以解決一部分人的疑問,希望對您有所幫助。

第一,JDBC是JDK的一部分至少在Java Tiger Development Kits中是這樣),使用JDBC直接在程序文件中寫import java.sql.*;即可使用了。

第二,連接字符串的格式。本地連接的連接字符串格式為jdbc:product_name: database_name,遠程連接的格式為jdbc:product_name://host_name/port_ number:database_name。即如果我的數據庫名字為rdb,則本地連接字符串為jdbc:db2:rdb當然rdb一定是處於DB2 的默認實例之中的),而遠程連接字符串為jdbc:db2://192.168.1.10/50000:rdb這裡192.168.1.10為數據庫所在服務器IP地址,而50000為DB2 連接服務的端口號)。

第三,安裝DB2 數據庫提供的為JDBC准備的類庫在.NET中叫Provider,在Java中怎麼叫還沒研究過)。查找IBM DB2 UDB的安裝目錄或者Java Tiger的JDK目錄你會找到db2java.zip,把它先做一個副本以後就它最有用了。現在我們開始討論數據庫連接的程序代碼。

應用程序連接DB2 數據庫:

先將db2java.zip解壓縮,把COM目錄轉移到代碼的當前目錄,然後我們開始注冊這個Provider的實例,代碼為:

Class.forName(“COM.ibm.db2.jdbc.app.DB2 Driver”).newInstance();

Class.forName(“COM.ibm.db2.jdbc.net.DB2 Driver”).newInstance():

這兩句任選其一,作用稍有不同,前者是具有DB2 客戶端的Provider實例,後者是無DB2 客戶端的Provider實例。

此後再寫Connection con=DriverManager.getConnection();即可得到數據庫連接的實例。

JSP中連接DB2 數據庫:

這裡以Tomcat作為Servlet容器,如果想在Tomcat中使用DB2 Provider必須把db2java.zip更名成db2java.jar然後復制到tomcat主目錄下common\lib目錄下,重新啟動Tomcat這樣就完成了Provider的注冊。然後注冊Provider實例的代碼與上面等同。還有文章寫到另一種注冊Provider實例的方法:

DriverManager.registerDriver(new COM.ibm.db2.jdbc.app.DB2 Driver());

DriverManager.registerDriver(new COM.ibm.db2.jdbc.net.DB2 Driver());

數據庫連接實例化方法同上。

深入探討:

我本人不是很了解Tomcat的運行機制以及原理,不過通過測試發現直接從JSP頁面連接DB2 數據庫會非常的慢。經過實踐發現,最好的方法就是在Servlet中使用數據庫連接代碼,然後把數據庫連接返回給JSP頁面,十分方便,也便於集中處理代碼問題。而且DB2 的數據庫連接中總會出現DB2 服務器自己突然Down掉或者出現連接越發緩慢,這是DB2 的實例及數據庫參數配置不妥而引起的,我將會再另外的文章中詳述,希望能幫助大家。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved