2010-07-01 46 views

回答

1

你需要在你的程序編譯時必要的DB2 JDBC jar文件,運行時類路徑。 如果您在目標計算機上安裝了本機DB2客戶端,則可以使用JDBC ODBC Bridge。但是,最好堅持使用純Java-type4驅動程序。 (db2jcc.jar,db2jcc_license * .jar等)

一旦驅動程序位於classpath中,就可以使用通常的JDBC代碼開始。如:

import java.sql.*; 
import java.lang.*; 
import java.io.*; 
import Com.ibm.db2.jcc.*; //Type4 library 
public class DB2Sample{ 
    static 
    { 
    try 
    {  

     Class.forName("com.ibm.db2.jcc.DB2Driver"); 
    } 
    catch (ClassNotFoundException e) 
    { 
     System.err.println("Could not load DB2 driver \n"); 
     System.err.println(e.getMessage()); 
     System.exit(1); 
    } 

public static void main(String args[]) 
    { 

    /* Type 4 driver url */ 
    String url = "jdbc:db2j:net://machine-name:port-number/TGSAMPLE"; 
     Connection conn = DriverManager.getConnection(url,"userid", "psswrd"); 
... 
    } 

等。

IBM documentation here for better examples and details

+0

我正在創建此例外: java.sql.SQLException:沒有合適的驅動程序, 我使用相同的calss。任何想法 – user234194 2010-07-06 14:42:11

+0

確保您在CLASSPATH中具有必需的JAR文件。你如何運行這個例子? 另外,請確保您有正確的連接參數 - 例如url,用戶名和密碼;你能分享你的代碼嗎? – 2010-07-07 02:00:51

1

根據您的需求,用戶可以自己處理JDBC連接,或者使用一個獨立的JDBC池例如C3P0DBCPBoneCP

0

我不能使用容器權利的數據源?我需要編寫JDBC連接嗎?

您可以嘗試使用JNDI Lookup從容器中獲取連接。例如see this

但我認爲這樣做會容易得多。

我是否需要編寫JDBC連接?

是的,如果你更容易管理自己的連接。

您也可以使用連接池,如Apache DBCP或C3PO。 Here's a list其他支持獨立應用程序的連接池