JDBC 簡(jiǎn)介

什么是JDBC?

JDBC代表JAVA DATA bASE Connectivity(Java數(shù)據(jù)庫(kù)連接),它是一個(gè)標(biāo)準(zhǔn)的 Java API,用于 Java 編程語(yǔ)言和大量數(shù)據(jù)庫(kù)之間的獨(dú)立于數(shù)據(jù)庫(kù)的連接。

JDBC庫(kù)包括用于下面提到的每個(gè)任務(wù)的API,這些API通常與數(shù)據(jù)庫(kù)使用相關(guān)聯(lián)。

  • 與數(shù)據(jù)庫(kù)建立連接。

  • 創(chuàng)建SQL或MySQL語(yǔ)句。

  • 在數(shù)據(jù)庫(kù)中執(zhí)行SQL或MySQL查詢。

  • 查看和修改結(jié)果記錄。

從根本上講,JDBC是一種規(guī)范,提供了一組完整的接口,允許對(duì)基礎(chǔ)數(shù)據(jù)庫(kù)進(jìn)行可移植的訪問(wèn)。Java可用于編寫(xiě)不同類型的可執(zhí)行文件,例如-

  • Java 應(yīng)用程序

  • Java 小程序

  • Java Servlet

  • Java ServerPage(JSP)

  • 企業(yè) JavaBean(EJB)。

所有這些不同的可執(zhí)行文件都可以使用JDBC驅(qū)動(dòng)程序來(lái)訪問(wèn)數(shù)據(jù)庫(kù),并利用存儲(chǔ)的數(shù)據(jù)。

JDBC提供與ODBC相同的功能,從而允許Java程序包含獨(dú)立于數(shù)據(jù)庫(kù)的代碼。

先決條件

在繼續(xù)之前,您需要對(duì)以下兩個(gè)主題有充分的了解-

JDBC架構(gòu)

JDBC API支持用于數(shù)據(jù)庫(kù)訪問(wèn)的兩層和三層處理模型,但是通常,JDBC體系結(jié)構(gòu)由兩層組成-

  • JDBC API: 這提供了應(yīng)用程序到JDBC管理器的連接。

  • JDBC Driver API: 這支持JDBC管理器到驅(qū)動(dòng)程序的連接。

JDBC API使用驅(qū)動(dòng)程序管理器和特定于數(shù)據(jù)庫(kù)的驅(qū)動(dòng)程序來(lái)提供與異構(gòu)數(shù)據(jù)庫(kù)的透明連接。

JDBC驅(qū)動(dòng)程序管理器確保使用正確的驅(qū)動(dòng)程序來(lái)訪問(wèn)每個(gè)數(shù)據(jù)源。驅(qū)動(dòng)程序管理器能夠支持連接到多個(gè)異構(gòu)數(shù)據(jù)庫(kù)的多個(gè)并發(fā)驅(qū)動(dòng)程序。

以下是體系結(jié)構(gòu)圖,該圖顯示了驅(qū)動(dòng)程序管理器相對(duì)于JDBC驅(qū)動(dòng)程序和Java應(yīng)用程序的位置-

JDBC架構(gòu)

通用JDBC組件

JDBC API提供以下接口和類-

  • DriverManager:此類管理數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序列表。使用通信子協(xié)議將來(lái)自Java應(yīng)用程序的連接請(qǐng)求與適當(dāng)?shù)臄?shù)據(jù)庫(kù)驅(qū)動(dòng)程序進(jìn)行匹配。第一個(gè)在JDBC下識(shí)別特定子協(xié)議的驅(qū)動(dòng)程序?qū)⒂糜诮?shù)據(jù)庫(kù)連接。

  • Driver:該接口處理與數(shù)據(jù)庫(kù)服務(wù)器的通信。您很少會(huì)直接與Driver對(duì)象進(jìn)行交互。而是使用DriverManager對(duì)象,該對(duì)象管理此類型的對(duì)象。它還抽象了與使用Driver對(duì)象相關(guān)的詳細(xì)信息。

  • Connection:此接口包含用于聯(lián)系數(shù)據(jù)庫(kù)的所有方法。連接對(duì)象表示通信上下文,即,與數(shù)據(jù)庫(kù)的所有通信僅通過(guò)連接對(duì)象進(jìn)行。

  • Statement:您可以使用從此接口創(chuàng)建的對(duì)象將SQL語(yǔ)句提交到數(shù)據(jù)庫(kù)。除執(zhí)行存儲(chǔ)過(guò)程外,某些派生接口還接受參數(shù)。

  • ResultSet:使用Statement對(duì)象執(zhí)行SQL查詢后,這些對(duì)象保存從數(shù)據(jù)庫(kù)檢索的數(shù)據(jù)。它充當(dāng)?shù)?,使您可以遍歷其數(shù)據(jù)。

  • SQLException: 此類處理數(shù)據(jù)庫(kù)應(yīng)用程序中發(fā)生的所有錯(cuò)誤。

JDBC 4.0軟件包

java.sql和javax.sql是JDBC 4.0的主要包。這是撰寫(xiě)本教程時(shí)的最新JDBC版本。它提供了用于與數(shù)據(jù)源進(jìn)行交互的主要類。

這些軟件包中的新功能包括以下方面的更改:

  • 自動(dòng)數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序加載。

  • 異常處理方面的改進(jìn)。

  • 增強(qiáng)的BLOB / CLOB功能。

  • 連接和語(yǔ)句接口的增強(qiáng)。

  • 國(guó)家字符集支持。

  • SQL ROWID訪問(wèn)。

  • SQL 2003 XML數(shù)據(jù)類型支持。

  • 注解。

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清