1. 程式人生 > >資料庫連線JDBC

資料庫連線JDBC

什麼是JDBC

JDBC(java Database connectivity)是一個獨立於特定資料庫管理系統、通用的SQL資料庫存取和操作的公共介面(一組api),定義了用來訪問資料庫的標準java類庫,(java.sql.javax.sql)使用這個類庫可以以一種標準的方法、方便地訪問資料庫的資源。

JDBC 為訪問不同的資料庫提供了一種統一的途徑,為開發者遮蔽了一些細節問題。JDBC的目標是使java程式設計師使用jdbc可以連線任何提供了JDBC驅動程式的資料庫,這樣就使得程式設計師無需對特定的資料庫系統的特點有過多的瞭解,從而大大簡化和加快了開發過程。

JDBC 模型圖

資料庫連線池

普通的JDBC資料庫連線使用 DriveManager 來獲取,每次需要資料庫連線的時候,想資料庫請求一個,執行完成後斷開連線。

對於每一次資料庫連線,使用完後都得斷開。否則,如果程式出現異常而未能關閉,將會導致資料庫系統中的記憶體洩露,最終將導致重啟資料庫。

資料庫連線池在初始化時將建立一定數量的資料庫連線放到連線池中,這些資料庫連線的數量是由最小資料庫連線數來設定的。無論這些資料庫連線是否被使用,連線池都將一直保證至少擁有這麼多連線數量。連線池都最大資料庫連線數量限定了這個連線池能佔有都最大連線數,當應用程式想連線池都連線數超過最大連線數量時,這些請求將被加入到等待佇列中。

常用都資料庫連線池

JDBC 的 資料庫連線池使用 javax.sql.DataSource來表示,DataSource 只是一個介面,該介面通常有伺服器(Weblogic,WebSphere,Tomcat)提供實現,開源組織的實現:

  • DBCP資料庫連線池

資料庫驅動

JDBC api的實現,連線資料庫的。由驅動類和資料