<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    數據加載中……
    3.14 面試遇到的問題
       1.JDBC有幾種驅動類型:  

         type   1:jdbc-odbc橋    
      type   2:本地api驅動    
      type   3:網絡協議驅動    
      type   4:本地協議驅動    

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

          jdbc-odbc橋 ---- odbc---- 廠商DB代碼 ----- 數據庫Server     
                                              (圖一)    

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

     Type   2:   本地Api驅動    
          本地api驅動直接把jdbc調用轉變為數據庫的標準調用再去訪問數據庫.這種方法需要本地數據庫驅動代碼.    
       
      本地api驅動----廠商DB代碼-----數據庫Server     

                                           (圖二)     
             這種驅動比起jdbc-odbc橋執行效率大大提高了.但是,它仍然需要在客戶端加載數據庫廠商提供的代碼庫.這樣就不適合基于internet的應用.并且,他的執行效率比起3,4型的jdbc驅動還是不夠高.    
       
      Type3:網絡協議驅動    
              這種驅動實際上是根據我們熟悉的三層結構建立的.   jdbc先把對數局庫的訪問請求傳遞給網絡上的中間件服務器.   中間件服務器再把請求翻譯為符合數據庫規范的調用,再把這種調用傳給數據庫服務器.如果中間件服務器也是用java開發的,那么在在中間層也可以使用1,2型 jdbc驅動程序作為訪問數據庫的方法.    
       
      網絡協議驅動---------中間件服務器------------數據庫Server    
                                    (   圖三)    
       
             由于這種驅動是基于server的.所以,它不需要在客戶端加載數據庫廠商提供的代碼庫.而且他在執行效率和可升級性方面是比較好的.因為大部分功能實現都在server端,所以這種驅動可以設計的很小,可以非常快速的加載到內存中.   但是,這種驅動在中間件層仍然需要有配置其它數據庫驅動程序,并且由于多了一個中間層傳遞數據,它的執行效率還不是最好.     

        
      Type4   本地協議驅動    
              這種驅動直接把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 2008-03-14 23:41 flyleer 閱讀(209) 評論(0)  編輯  收藏

    主站蜘蛛池模板: 久久亚洲成a人片| 国产亚洲大尺度无码无码专线| 久久亚洲国产成人亚| 国产高清视频免费在线观看| 国产一区二区三区在线免费观看| 亚洲熟妇AV一区二区三区浪潮| 美女网站免费福利视频| 亚洲一日韩欧美中文字幕在线| 成年丰满熟妇午夜免费视频| 亚洲精品无码专区| 免费一级毛片一级毛片aa| 一级特黄录像视频免费| 亚洲AV午夜成人影院老师机影院| 人人玩人人添人人澡免费| 亚洲精品**中文毛片| 午夜a级成人免费毛片| 日本免费精品一区二区三区| 在线精品亚洲一区二区小说| 亚洲a一级免费视频| 亚洲另类小说图片| 国产公开免费人成视频| 成人网站免费大全日韩国产| 久久精品国产亚洲av麻豆色欲 | 久久久久亚洲精品男人的天堂| 久久国产一片免费观看| 亚洲精品国产专区91在线| 成人免费午间影院在线观看| 黄页网站在线观看免费| 亚洲国产精品一区二区成人片国内 | 四虎影视永久在线精品免费| 亚洲成A人片777777| 9久9久女女免费精品视频在线观看| 国产午夜亚洲精品不卡免下载 | 亚洲综合图色40p| 69视频在线观看免费| 亚洲精品无码久久久久久| 亚洲日韩v无码中文字幕| 性生交片免费无码看人| 中文字幕手机在线免费看电影 | 怡红院免费的全部视频| 亚洲中文字幕久在线|