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

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

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

    椰林

    暫無

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      4 Posts :: 8 Stories :: 0 Comments :: 0 Trackbacks

    關于jdbc的1,2,3,4.

    feidei 發表于 2004-11-09
    關鍵詞:jdbc驅動

     

    關于jdbc的1,2,3,4.
    flyblue轉載自java技?[2000-11-16]


    題目中所說的\"1,2,3,4\" 實際上是指jdbc驅動的四種類型.本文將對jdbc driver
    的四種類型以及不同類型的driver適合于哪種層次的應用做一個簡單介紹,
    如果你現在正準備開發有關數據庫的java應用,你也許會需要從網上下載相關數據庫的jdbc
    driver .在下載網頁上你可能會發現這樣的說明\"this is a type 4 drvier\"或this is type 3 driver那
    么到底應該下載哪一個,下載后的driver是否適合我們要開發的應用呢?還是讓我們先解釋
    一下這四種類型的具體含義吧。
    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型驅動則適合那些連接單一數據庫的工作組應用.

    說了這么多,那么相關的jdbc驅動應該在哪里下載呢?實際上各大數據庫廠商
    (oracle,sybase,db2)對jdbc多都有很好的支持(微軟例外).你可以到他們的官方站點去下載.
    由于微軟一直沒有開發sqlserver的jdbc驅動,所以只好用其他廠商提供的驅動.這里向大家
    推薦幾個站點
    http://www.idssoftware.com/jdbcdrv.html (3型)
    http://www.jturbo.com/ (4型)
    http://www.inetsoftware.de/(4型)
    特別推薦I-net Sprinta 2000 的sqlserver驅動,因為他的驅動只有47K沒有時間限制,并且是4
    型驅動.

    對于在編程時如何用JDBC建立連接,本文就不做詳細介紹了.讀者可以在jdk中找到例子,目
    錄為jdk/demo/jfc/dbdemos. 如果你下載其他廠商的驅動程序在壓縮文件中會有例子.
    如果你在applet中調用jdbc驅動訪問數據庫一定要注意web server和 數據庫 server一定
    要在同一臺機器.這是java applet 安全規范所要求的.
    posted on 2006-02-27 16:52 椰子 閱讀(557) 評論(0)  編輯  收藏 所屬分類: 技術

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


    網站導航:
     
    主站蜘蛛池模板: 亚洲第一永久在线观看| 亚洲AV中文无码乱人伦下载| 亚洲国产精品久久| 1024免费福利永久观看网站| 亚洲视频在线不卡| 成人毛片免费视频| 中文字幕免费在线看线人动作大片 | 久久精品国产精品亚洲艾| 日韩免费高清一级毛片| 免费乱码中文字幕网站| 三级片免费观看久久| 国产亚洲成归v人片在线观看 | 久久久免费精品re6| 亚洲无限乱码一二三四区| 青青青国产在线观看免费网站 | 亚洲美女大bbbbbbbbb| 亚欧人成精品免费观看| 亚洲伊人久久大香线蕉AV| 国产亚洲精品免费| 国产精品综合专区中文字幕免费播放| 国产av无码专区亚洲国产精品| 中文字幕免费在线看电影大全 | 久久精品国产亚洲香蕉| 亚洲高清视频免费| 亚洲AV色欲色欲WWW| 亚洲国产高清在线一区二区三区| 中国一级特黄高清免费的大片中国一级黄色片| 一本色道久久综合亚洲精品| **真实毛片免费观看| 在线观看亚洲免费视频| 亚洲乱码无码永久不卡在线 | 1000部夫妻午夜免费| 羞羞漫画小舞被黄漫免费| 久久亚洲国产视频| 免费的一级片网站| 久久国产乱子精品免费女| 亚洲成a人无码亚洲成av无码 | 亚洲国产精品张柏芝在线观看| 国内自产拍自a免费毛片| 国产一二三四区乱码免费| 国产精品亚洲精品观看不卡|