首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

JDBC 技術演進史與核心架構:從 ODBC 到「Write Once, Run Everywhere」

     編輯:Java 相關知識

ODBC → JDBC 歷史必然

  • ODBC:C 語言 API、指針密集、平台綁定、簡繁混雜。
  • Java 爆發期(1995~),開發者被迫在 Java 中 JNI 調用 ODBC,喪失跨平台、OO、安全優勢。
  • Sun 推出 JDBC(JDK 1.1 正式納入標準),純 Java、面向對象、無指針、簡單事物簡單做、複雜特性可選擇、驅動可自動下載部署(Applet/WebStart 時代)。

JDBC 三大核心任務

  1. 建立連接
  2. 發送 SQL
  3. 處理結果集

底層 API 定位

直接發送 SQL 字符串,勝任基礎訪問;上層可構建:SQLJ(嵌入式 SQL 預編譯)、OR 映射(行→對象自動映射)、圖形化開發工具。

JDBC vs ODBC vs RDO/ADO/OLE DB

JDBCODBC微軟系
語言JavaCCOM/C++
指針無大量 void*封裝指針
風格OO、介面導向函數式OO 包裝層
部署純 Java 驅動自動下載需客戶端裝驅動/管理器同 ODBC
橋接JDBC-ODBC Bridge 過渡用基礎ODBC 之上

兩層 vs 三層架構

  • 兩層:Applet/Application 直連 DB(Client/Server),適合內網、簡單場景。
  • 三層:中間層(Java EE 服務器)承擔連接池、事務、安全、邏輯,Client 僅調用遠程介面。隨著 JIT 編譯器成熟,Java 寫中間層性能已足夠,JDBC 成為關鍵樞紐。

驅動類型四選一

  1. Type 4(純 Java、直連):廠商原生,性能最好、跨平台、無依賴。首選。
  2. Type 3(三層、中間件轉發):擴展性強、適合異構 DB 遷移,性能稍遜。
  3. Type 2(本地客戶端庫):性能次之、需客戶端裝庫、遷移痛、非純 Java。少用。
  4. Type 1(JDBC-ODBC Bridge):兼容舊 Access/Excel/無 Type 4 驅動的 DB,維護最麻煩。最後手段。
選擇原則:能用 Type 4 就用 Type 4;需遷移彈性上 Type 3;被迫兼容舊系統才碰 Type 1/2。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved