2011-11-04 78 views
0

我有這個問題,真讓我困惑,在這裏它: 如果我通過Java應用程序連接到Linux上的DB2,我不需要添加任何db2 jar文件複製到CP,只要java.library.path包含正確的本地庫路徑,連接看起來不錯; 如果我連接到Oracle,我需要將ojdbcX jar文件添加到CP,並在java.library.path中有正確的庫路徑以確保連接成功。CLASSPATH vs java.library.path設置爲oracle和db2

我沒有看到完整的圖片或者它們是如何工作的?任何指針?

回答

1

我有2個解釋,並希望其中一個是正確的。

很可能,DB2驅動程序完全是本地的,即根本沒有Java代碼。所以,你不必添加任何jar到類路徑。其他可能性是,可能是DB2連接器(驅動程序)的本機代碼本身加載了java類。

其他解釋是,您可能在系統上安裝了某種DB2套件或客戶端,並且安裝程序更改了環境變量CLASSPATH並在其中添加了db2 jar,因此該jar可用於您計算機上的所有Java應用程序。

+0

亞歷克斯,我很確定DB2驅動程序是用java編寫的,好吧...至於你提到的其他解釋,我不太清楚,因爲我手動將CP更改爲空,並且午餐應用程序,ta da..connected! – Even

+0

DB2有2個當前支持的JDBC驅動程序。 com.ibm.db2.app.DB2Driver(不建議使用)是一個2型驅動程序(因此取決於本機DB2客戶端代碼)。 com.ibm.db2.jcc.DB2Driver是當前驅動程序和函數的類型2(取決於本機客戶端)或類型4(純java)。 –