來源:北大青鳥飛迅校區(qū)|發(fā)布時(shí)間:2013-05-01 10:46:20
此文主要闡述的是關(guān)于JDBC連接DB2數(shù)據(jù)庫的實(shí)際操作,我們大家都知道關(guān)于講解DB2數(shù)據(jù)庫的JDBC連接的實(shí)際操作文章有很多,其中比較出名的有諸如“JDBC數(shù)據(jù)庫連接大全”和“JSP的DB2連接數(shù)據(jù)庫”,雖然都是很詳細(xì)的資料,也都說解決了前人沒有解決的問題。
關(guān)于DB2數(shù)據(jù)庫的JDBC連接文章有很多,比較出名的有諸如“JDBC數(shù)據(jù)庫連接大全”和“JSP的DB2連接數(shù)據(jù)庫”,雖然都是很詳細(xì)的資料,也都說解決了前人沒有解決的問題,但還是有許多紕漏。我就這兩天的經(jīng)驗(yàn)給大家寫一篇關(guān)于JDBC連接數(shù)據(jù)庫的文章,以解決一部分人的疑問。
第一, JDBC是JDK的一部分(至少在Java Tiger Development Kits中是這樣),使用JDBC直接在程序文件中寫import java.sql.*;即可使用了。
第二, 連接字符串的格式。本地連接的連接字符串格式為jdbc:product_name: database_name,遠(yuǎn)程連接的格式為jdbc:product_name://host_name/port_ number:database_name。即如果我的數(shù)據(jù)庫名字為rdb,則本地連接字符串為jdbc:db2:rdb(當(dāng)然rdb一定是處于DB2的默認(rèn)實(shí)例之中的),而遠(yuǎn)程連接字符串為jdbc:db2://192.168.1.10/50000:rdb(這里192.168.1.10為數(shù)據(jù)庫所在服務(wù)器IP地址,而50000為DB2連接服務(wù)的端口號(hào))。
第三, 安裝DB2數(shù)據(jù)庫提供的為JDBC準(zhǔn)備的類庫(在.NET中叫Provider,在Java中怎么叫還沒研究過)。查找IBM DB2 UDB的安裝目錄或者Java Tiger的JDK目錄你會(huì)找到db2java.zip,把它先做一個(gè)副本以后就它最有用了,F(xiàn)在我們開始討論數(shù)據(jù)庫連接DB2數(shù)據(jù)庫的程序代碼。
應(yīng)用程序連接DB2數(shù)據(jù)庫:
先將db2java.zip解壓縮,把COM目錄轉(zhuǎn)移到代碼的當(dāng)前目錄,然后我們開始注冊這個(gè)Provider的實(shí)例,代碼為:
Class.forName(“COM.ibm.db2.jdbc.app.DB2Driver”).newInstance();
Class.forName(“COM.ibm.db2.jdbc.net.DB2Driver”).newInstance():
這兩句任選其一,作用稍有不同,前者是具有DB2客戶端的Provider實(shí)例,后者是無DB2客戶端的Provider實(shí)例。
此后再寫Connection con=DriverManager.getConnection();即可得到數(shù)據(jù)庫連接的實(shí)例。
JSP中連接DB2數(shù)據(jù)庫:
這里以Tomcat作為Servlet容器,如果想在Tomcat中使用DB2 Provider必須把db2java.zip更名成db2java.jar然后復(fù)制到tomcat主目錄下commonlib目錄下,重新啟動(dòng)Tomcat這樣就完成了Provider的注冊。然后注冊Provider實(shí)例的代碼與上面等同。還有文章寫到另一種注冊Provider實(shí)例的方法:
DriverManager.registerDriver(new COM.ibm.db2.jdbc.app.DB2Driver());
DriverManager.registerDriver(new COM.ibm.db2.jdbc.net.DB2Driver());
數(shù)據(jù)庫連接實(shí)例化方法同上。
深入探討:
我本人不是很了解Tomcat的運(yùn)行機(jī)制以及原理,不過通過測試發(fā)現(xiàn)直接從JSP頁面連接DB2數(shù)據(jù)庫會(huì)非常的慢。經(jīng)過實(shí)踐發(fā)現(xiàn),最好的方法就是在Servlet中使用數(shù)據(jù)庫連接代碼,然后把數(shù)據(jù)庫連接返回給JSP頁面,十分方便,也便于集中處理代碼問題。而且DB2的數(shù)據(jù)庫連接中總會(huì)出現(xiàn)DB2服務(wù)器自己突然Down掉或者出現(xiàn)連接越發(fā)緩慢,這是DB2的實(shí)例及數(shù)據(jù)庫參數(shù)配置不妥而引起的,我將會(huì)再另外的文章中詳述,希望能幫助大家。
全程面授,不高薪都難
申請成功后,我們將在24小時(shí)內(nèi)與您聯(lián)系
招生熱線: 4008-0731-86 / 0731-82186801
學(xué)校地址: 長沙市天心區(qū)團(tuán)結(jié)路6號(hào)
Copyright © 2006 | 湖南大計(jì)信息科技有限公司 版權(quán)所有
湘ICP備14017520號(hào)-3