更新時間:2022-03-30 08:46:14 來源:動力節(jié)點 瀏覽1989次
JDBC 的完整形式是 Java Database Connectivity。它基本上是一個 Java API,用于與數(shù)據(jù)庫一起執(zhí)行和連接查詢。它被認(rèn)為是 Java SE 的一部分,即 Java 標(biāo)準(zhǔn)版。JDBC 的 API 使用 JDBC 的驅(qū)動程序來與數(shù)據(jù)庫連接。我們可以考慮以下四種類型的 JDBC 驅(qū)動程序:
JDBC-ODBC 橋驅(qū)動程序
本機(jī)驅(qū)動程序
網(wǎng)絡(luò)協(xié)議驅(qū)動程序
JDBC API 可用于訪問存儲在任何關(guān)系數(shù)據(jù)庫中的表格數(shù)據(jù)。通過使用 JDBC API,您可以保存、更新、刪除和從數(shù)據(jù)庫中獲取數(shù)據(jù)。因此,它被認(rèn)為是Open Database Connectivity,即微軟提供的ODBC。
定義
了解 JDBC
使用 JDBC 或 Java 數(shù)據(jù)庫連接可以輕松地與應(yīng)用程序或數(shù)據(jù)源建立連接、發(fā)送查詢、更新語句和處理結(jié)果。它使下面提到的所有事情在 Java 應(yīng)用程序中成為可能——
它有助于輕松地與數(shù)據(jù)源建立連接
它使發(fā)送查詢和更新語句成為可能
它有助于從數(shù)據(jù)庫中獲取數(shù)據(jù)并以非常簡單的方式處理獲取的結(jié)果。
可以提交 SQL 語句和查詢,并在Java 應(yīng)用程序的幫助下通過調(diào)用 JDBC 類和接口來檢索結(jié)果。它是幫助實現(xiàn) JDBC API 的 JDBC 驅(qū)動程序。此驅(qū)動程序構(gòu)成一組將實現(xiàn) JDBC 接口的類。這將進(jìn)一步有助于處理 JDBC 調(diào)用并將輸出/結(jié)果發(fā)送到 Java 應(yīng)用程序。數(shù)據(jù)庫基本上是一個數(shù)據(jù)存儲,其中存儲了 Java 應(yīng)用程序使用 JDBC 驅(qū)動程序檢索到的所有數(shù)據(jù)。
在它出現(xiàn)之前,我們使用 ODBC API 數(shù)據(jù)庫來連接以及與數(shù)據(jù)庫一起執(zhí)行查詢。但是,ODBC API 使用 C 語言中的 ODBC 驅(qū)動。此外,它依賴于平臺,此外,它是不安全的。這就是Java使用JDBC驅(qū)動程序定義自己的API(稱為JDBC API)的原因,并且它也是用Java語言編寫的。
我們可以使用處理數(shù)據(jù)庫所需的 JDBC API 執(zhí)行各種活動:
連接到數(shù)據(jù)庫
執(zhí)行查詢以及對數(shù)據(jù)庫的更新語句
檢索從數(shù)據(jù)庫中獲取的結(jié)果。
它支持兩層和三層處理模型,以實現(xiàn)數(shù)據(jù)庫訪問。但是,一般來說,它的架構(gòu)有以下兩層:
JDBC API: 該層支持與應(yīng)用程序到 JDBC 管理器的連接。它利用驅(qū)動程序管理器以及特定于數(shù)據(jù)庫的驅(qū)動程序,以便為異構(gòu)數(shù)據(jù)庫提供透明的連接。
JDBC Driver API: 這一層提供了JDBC Manager到Driver的連接。此驅(qū)動程序管理器確保在訪問每個數(shù)據(jù)源時使用了正確的驅(qū)動程序。它還能夠支持連接到各種異構(gòu)數(shù)據(jù)庫的許多并發(fā)驅(qū)動程序。
它由以下接口以及可以稱為組件的類組成:
驅(qū)動管理器:驅(qū)動管理器類,顧名思義,負(fù)責(zé)管理數(shù)據(jù)庫的驅(qū)動列表。它還借助通信子協(xié)議匹配來自 java 應(yīng)用程序的連接請求以及數(shù)據(jù)庫驅(qū)動程序。第一個驅(qū)動程序,它識別 JDBC 下的子協(xié)議,用于建立數(shù)據(jù)庫連接。
驅(qū)動程序: 處理應(yīng)用程序和數(shù)據(jù)庫服務(wù)器之間發(fā)生的通信的接口稱為驅(qū)動程序。直接與 Driver 對象交互的機(jī)會非常少,因為大多數(shù)時候,Driver Manager 的對象通常用于管理此類對象。與 Driver 對象的工作相關(guān)的所有 detail=[]- 都由它提取。
連接:連接接口以及所有方法用于聯(lián)系數(shù)據(jù)庫。連接的對象代表通信的上下文;也就是說,所有與數(shù)據(jù)庫的通信都只通過連接對象。
語句: 從此接口創(chuàng)建的對象可以將SQL 語句提交到數(shù)據(jù)庫。一些派生接口在執(zhí)行一些存儲過程時也接受參數(shù)。
ResultSet: ResultSet 對象用于保存從數(shù)據(jù)庫中檢索到的數(shù)據(jù),但這是在您借助 Statement 對象執(zhí)行 SQL 查詢之后發(fā)生的。它還充當(dāng)允許我們在數(shù)據(jù)中移動的迭代器。
SQL Exception: SQL Exception 類用于處理數(shù)據(jù)庫應(yīng)用程序中發(fā)生的任何錯誤。
以下是優(yōu)點和缺點:
優(yōu)點
使用以下提到的一些優(yōu)點:
它能夠讀取任何數(shù)據(jù)庫。這樣做的唯一要求是正確安裝所有驅(qū)動程序。
它會自動從數(shù)據(jù)庫中創(chuàng)建XML 格式的數(shù)據(jù)。
它不需要轉(zhuǎn)換內(nèi)容。
它提供對查詢和存儲過程的全面支持。
它提供對同步和異步處理的支持。
它支持模塊。
缺點
就像大多數(shù) API 一樣,它也有一些缺點。下面提到了其中一些缺點:
當(dāng)涉及到驅(qū)動程序時,它非常敏感。因此,安裝正確的驅(qū)動程序并為每種類型的數(shù)據(jù)庫部署它們以便使用它是非常重要的。這是一項耗時的任務(wù),有時也充滿挑戰(zhàn)。
它不允許單個序列更新或插入多個表。
因此,它可以幫助您連接到數(shù)據(jù)庫,從而對數(shù)據(jù)庫執(zhí)行 SQL 語句。如前所述,JDBC api 還提供了一組接口以及各自數(shù)據(jù)庫的不同實現(xiàn)。如果大家想了解更多相關(guān)知識,不妨來關(guān)注一下動力節(jié)點的JDBC視頻教程,里面的課程內(nèi)容通俗易懂,即使沒有基礎(chǔ)也可以聽懂,希望對大家的學(xué)習(xí)能夠有所幫助。
初級 202925
初級 203221
初級 202629
初級 203743