細心!用心!耐心!

          吾非文人,乃市井一俗人也,讀百卷書,跨江河千里,故申城一游; 一兩滴辛酸,三四年學業,五六點粗墨,七八筆買賣,九十道人情。

          BlogJava 聯系 聚合 管理
            1 Posts :: 196 Stories :: 10 Comments :: 0 Trackbacks

          Java中的JDBC驅動可以分為四種類型,包括JDBC-ODBC橋、本地API驅動、網絡協議驅動和本地協議驅動。


          JDBC驅動類型一、JDBC-ODBC橋


          JDBC-ODBC 橋 是sun公司提供的,是jdk提供的的標準API. 這種類型的驅動實際是把所有 JDBC的調用傳遞給ODBC
          ,再由ODBC調用本地數據庫驅動代碼.( 本地數據庫驅動代碼是指 由數據庫廠商提供的數據庫操作二進制代碼庫,例如在oracle for
          windows中就是oci dll 文 件)


          只要本地機裝有相關的ODBC驅動那么采用JDBC-ODBC橋幾乎可以訪問所有的數據庫,JDBC- ODBC方法對于客戶端已經具備ODBC
          driver的應用還是可行的.


          但是,由于JDBC-ODBC先調用 ODBC再由ODBC去調用本地數據庫接口訪問數據庫.所以,執行效率比較低,對于那些大數據量
          存取的應用是不適合的.而且,這種方法要求客戶端必須安裝ODBC 驅動,所以對于基于 internet
          ,intranet的應用也是不合適的.因為,你不可能要求所有客戶都能找到ODBC driver.


          JDBC驅動類型二、本地API驅動


          本地API驅動直接把JDBC調用轉變為數據庫的標準調用再去訪問數據庫.


          這種方法需要本地 數據庫驅動代碼. 本地API驅動 | 廠商DB代碼---------------數據庫Server (圖二)
          這種驅動比起JDBC-ODBC橋執行效率大大提高了.但是,它仍然需要在客戶端加載數據庫廠商
          提供的代碼庫.這樣就不適合基于internet的應用.并且,他的執行效率比起3,4型的JDBC驅動 還是不夠高.


          JDBC驅動類型三、網絡協議驅動


          這種驅動實際上是根據我們熟悉的三層結構建立的. JDBC先把對數局庫的訪問請求傳遞給網 絡上的中間件服務器.
          中間件服務器再把請求翻譯為符合數據庫規范的調用,再把這種調用 傳給數據庫服務器.如果中間件服務器也是用java開法的,那么在在中間層也可以使用1,2型
          JDBC驅動程序作為訪問數據庫的方法. 網絡協議驅動---------中間件服務器------------數據庫Server


          由于這種驅動是基于server的.所以,它不需要在客戶端加載數據庫廠商提供的代碼庫.而且
          他在執行效率和可升級性方面是比較好的.因為大部分功能實現都在server端,所以這種驅動 可以設計的很小,可以非常快速的加載到內存中.
          但是,這種驅動在中間件層仍然需要有配置 其它數據庫驅動程序,并且由于多了一個中間層傳遞數據,它的執行效率還不是最好.


          JDBC驅動類型四、本地協議驅動


          這種驅動直接把JDBC調用轉換為符合相關數據庫系統規范的請求.由于4型驅動寫的應用可
          以直接和數據庫服務器通訊.這種類型的驅動完全由java實現,因此實現了平臺獨立性. 本地協議驅動---------數據庫Server


          由于這種驅動不需要先把JDBC的調用傳給ODBC或本地數據庫接口或者是中間層服務器.所
          以它的執行效率是非常高的.而且,它根本不需要在客戶端或服務器端裝載任何的軟件或驅動. 這種驅動程序可以動態的被下載.但是對于不同的數據庫需要下載不同的驅動程序.


          以上對四種類型的JDBC驅動做了一個說明.那么它們適合那種類型的應用開發呢?


          JDBC-ODBC橋由于它的執行效率不高,更適合做為開發應用時的一種過度方案,或著對于初學 者了解JDBC編程也較適用.
          對于那些需要大數據量操作的應用程序則應該考慮2,3,4型驅動.在intranet方面的應用可以
          考慮2型驅動,但是由于3,4型驅動在執行效率上比2型驅動有著明顯的優勢,而且目前開發 的趨勢是使用純java.所以3,4型驅動也可以作為考慮對象.
          至于基于internet方面的應用就只有考慮3,4型驅動了. 因為3型驅動可以把多種數據庫驅
          動都配置在中間層服務器.所以3型驅動最適合那種需要同時連接多個不同種類的數據庫, 并且對并發連接要求高的應用.
          4型驅動則適合那些連接單一數據庫的工作組應用。

          posted on 2014-07-29 10:06 張金鵬 閱讀(158) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 克拉玛依市| 胶南市| 怀化市| 云林县| 徐州市| 黄大仙区| 安顺市| 元江| 大石桥市| 淮阳县| 常宁市| 东阿县| 余庆县| 高要市| 乐安县| 扎赉特旗| 荆州市| 卢氏县| 普陀区| 玛纳斯县| 宝坻区| 洪湖市| 宽甸| 四会市| 宁河县| 金堂县| 新巴尔虎右旗| 新营市| 呼伦贝尔市| 蒲江县| 贵定县| 林甸县| 青岛市| 焦作市| 汶上县| 南溪县| 博白县| 茂名市| 汤阴县| 嘉荫县| 龙海市|