JSP學習——全面解析JDBC(1)
來源:互聯網
上載者:User
js 綜述:Java資料庫連接體繫結構是用於Java應用程式串連資料庫的標準方法。JDBC對Java程式員而言是API,對實現與資料庫連接的服務提供者而言是介面模型。作為API,JDBC為程式開發提供標準的介面,並為資料庫廠商及第三方中介軟體廠商實現與資料庫的串連提供了標準方法。JDBC使用已有的SQL標準並支援與其它資料庫連接標準,如ODBC之間的橋接。JDBC實現了所有這些面向標準的目標並且具有簡單、嚴格類型定義且高效能實現的介面。
--------------------------------------------------------------------------------
如何選擇合適的JDBC產品?
有關JDBC最新的資訊,有興趣的讀者可以查閱JDBC的官方網站--即JavaSoft的首頁,其URL為: http://Java.sun.com/products/jdbc
1. JavaSoft架構
JavaSoft提供三種JDBC產品組件,它們是Java開發套件(JDK)的組成部份:JDBC驅動程式管理器、JDBC驅動程式測試載入器包和JDBC-ODBC橋。
JDBC驅動程式管理器是JDBC體繫結構的支柱。它實際上很小,也很簡單;其主要作用是把Java應用程式串連到正確的JDBC驅動程式上,然後即退出。
JDBC驅動程式測試載入器包為使JDBC驅動程式運行您的程式提供一定的可信度。只有通過JDBC驅動程式測試的驅動程式才被認為是符合JDBC標準TM的。
JDBC-ODBC橋使ODBC驅動程式可被用作JDBC驅動程式。它的實現為JDBC的快速發展提供了一條途徑,其長遠目標提供一種訪問某些不常見的DBMS(如果對這些不常見的DBMS未實現JDBC)的方法。
2. JDBC驅動程式的類型
目前比較常見的JDBC驅動程式可分為以下四個種類:
(1)JDBC-ODBC橋加ODBC驅動程式
JavaSoft橋產品利用ODBC驅動程式提供JDBC訪問。注意,必須將ODBC二進位代碼(許多情況下還包括資料庫客戶機代碼)載入到使用該驅動程式的每個客戶機上。因此,這種類型的驅動程式最適合於企業網(這種網路上客戶機的安裝不是主要問題),或者是用Java編寫的三層結構的應用程式伺服器代碼。
(2)本地API
這種類型的驅動程式把客戶機API上的JDBC調用轉換為Oracle、Sybase、Informix、DB2或其它DBMS的調用。注意,象橋驅動程式一樣,這種類型的驅動程式要求將某些二進位代碼載入到每台客戶機上。
(3)JDBC網路純Java驅動程式
這種驅動程式將JDBC轉換為與DBMS無關的網路通訊協定,之後這種協議又被某個伺服器轉換為一種DBMS協議。這種網路伺服器中介軟體能夠將它的純Java客戶機串連到多種不同的資料庫上。所用的具體協議取決於提供者。通常,這是最為靈活的JDBC驅動程式。有可能所有這種解決方案的提供者都提供適合於Intranet用的產品。為了使這些產品也支援Internet訪問,它們必須處理Web所提出的安全性、通過防火牆的訪問等方面的其他需求。幾家提供者正將JDBC驅動程式加到他們現有的資料庫中介軟體產品中。
(4)本地協議純Java驅動程式
這種類型的驅動程式將JDBC調用直接轉換為DBMS所使用的網路通訊協定。這將允許從客戶機機器上直接調用DBMS伺服器,是Intranet訪問的一個很實用的解決方案。由於許多這樣的協議都是專用的,因此資料庫提供者自己將是主要來源,有幾家提供者已在著手做這件事了。
據專家預計第(3)、(4)類驅動程式將成為從JDBC訪問資料庫的首方法。第(1)、(2)類驅動程式在直接的純Java驅動程式還沒有上市前會作為過渡方案來使用。對第(1)、(2)類驅動程式可能會有一些變種,這些變種要求有連接器,但通常這些是更加不可取的解決方案。第(3)、(4)類驅動程式提供了Java的所有優點,包括自動安裝(例如,通過使用JDBC驅動程式的appletapplet來下載該驅動程式)。
3. JDBC驅動程式的擷取
目前已有幾十個(1)類的驅動程式,即可與Javasoft橋聯合使用的ODBC驅動程式的驅動程式。有大約十多個屬於種類(2)的驅動程式是以DBMS的本地API為基礎編寫的。只有幾個屬於種類(3)的驅動程式,其首批提供者是SCO、OpenHorizon、Visigenic和WebLogic。此外,JavaSoft和資料庫連接的領先提供者Intersolv還合作研製了JDBC-ODBC橋和JDBC驅動程式測試載入器包。