Java JDBC數(shù)據(jù)庫編程技術(shù)與實(shí)例

Java JDBC數(shù)據(jù)庫編程技術(shù)與實(shí)例

ID:37239597

大?。?57.04 KB

頁數(shù):17頁

時(shí)間:2019-05-20

Java JDBC數(shù)據(jù)庫編程技術(shù)與實(shí)例_第1頁
Java JDBC數(shù)據(jù)庫編程技術(shù)與實(shí)例_第2頁
Java JDBC數(shù)據(jù)庫編程技術(shù)與實(shí)例_第3頁
Java JDBC數(shù)據(jù)庫編程技術(shù)與實(shí)例_第4頁
Java JDBC數(shù)據(jù)庫編程技術(shù)與實(shí)例_第5頁
資源描述:

《Java JDBC數(shù)據(jù)庫編程技術(shù)與實(shí)例》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、JavaJDBC數(shù)據(jù)庫編程技術(shù)與實(shí)例軟件的本質(zhì)就是處理數(shù)據(jù),而在商業(yè)應(yīng)用中,數(shù)據(jù)往往需要專門的數(shù)據(jù)庫來存放。所以在軟件開發(fā)過程中,幾乎所有的項(xiàng)目都要使用到數(shù)據(jù)庫。那么在Java項(xiàng)目中是如何對(duì)數(shù)據(jù)庫進(jìn)行操作的呢?這就需要用到Java數(shù)據(jù)庫應(yīng)用程序。在這一章中,將學(xué)習(xí)如下內(nèi)容:JDBC技術(shù)和驅(qū)動(dòng)程序;java.sql包下的常用類;JDBC操作數(shù)據(jù)庫實(shí)例。23.1JDBC技術(shù)概述JDBC(JavaDatabaseConnectivity)是一種用于執(zhí)行SQL語句的JavaAPI。它由一組用Java編程語言編寫的類和接

2、口組成,為Java應(yīng)用程序與各種不同數(shù)據(jù)庫之間進(jìn)行對(duì)話提供了一種便捷的方法,使得開發(fā)人員能夠用純JavaAPI來編寫具有跨平臺(tái)性的數(shù)據(jù)庫應(yīng)用程序。23.1.1JDBC技術(shù)介紹應(yīng)用程序可以通過數(shù)據(jù)庫廠商提供的API以及SQL語句對(duì)數(shù)據(jù)庫進(jìn)行操作,如圖23.1所示。圖23.1應(yīng)用程序訪問數(shù)據(jù)庫在此模式下,看到不同的數(shù)據(jù)庫有不同的API操作界面。這樣的話,對(duì)于實(shí)現(xiàn)同樣功能的應(yīng)用程序,針對(duì)不同的數(shù)據(jù)庫,開發(fā)人員需要編寫不同的代碼,這樣對(duì)Java設(shè)計(jì)人員是很不方便的。于是JDBC應(yīng)運(yùn)而生。JDBC的出現(xiàn)使Java程序?qū)Ω鞣N數(shù)據(jù)

3、庫的訪問能力大大增強(qiáng)。通過使用JDBC,開發(fā)人員可以很方便地將SQL語句傳送給幾乎任何一種數(shù)據(jù)庫。JDBC的工作模式如下面的圖23.2所示。從圖中可以看到,應(yīng)用程序通過調(diào)用JDBC來操作數(shù)據(jù)庫的過程,其實(shí)是由數(shù)據(jù)庫廠商提供的JDBC驅(qū)動(dòng)程序來負(fù)責(zé)的。如果要更換數(shù)據(jù)庫,只要更換驅(qū)動(dòng)程序,并在JDBC中載入新的驅(qū)動(dòng)程序來源,即可完成數(shù)據(jù)庫系統(tǒng)的變更。換句話說,使用JDBC后就沒有必要寫一個(gè)程序訪問Oracle數(shù)據(jù)庫,而另一個(gè)程序訪問SQLServer數(shù)據(jù)庫,再寫一個(gè)程序訪問DB2了。圖23.2JDBC工作模式JDBC的主

4、要功能如下。建立與數(shù)據(jù)庫或者其他數(shù)據(jù)源的連接;向數(shù)據(jù)庫發(fā)送SQL命令;處理數(shù)據(jù)庫的返回結(jié)果。23.1.2JDBC的4種驅(qū)動(dòng)程序?yàn)榱伺c某個(gè)數(shù)據(jù)庫連接,必須要具有適合該數(shù)據(jù)庫的驅(qū)動(dòng)程序。JDBC驅(qū)動(dòng)程序主要有以下4種基本類型:1.JDBC-ODBC橋加ODBC驅(qū)動(dòng)程序JDBC-ODBC橋產(chǎn)品經(jīng)由ODBC驅(qū)動(dòng)程序供JDBC訪問數(shù)據(jù)庫。ODBC(開放式數(shù)據(jù)庫連接)的出現(xiàn)要比JDBC早,廣泛地應(yīng)用于連接各種環(huán)境中的數(shù)據(jù)庫。JDBC-ODBC橋加ODBC驅(qū)動(dòng)程序?qū)嶋H是把所有JDBC的調(diào)用傳遞給ODBC,再由ODBC調(diào)用本地

5、數(shù)據(jù)庫驅(qū)動(dòng)代碼。在本書中,將采用此驅(qū)動(dòng)程序+Access數(shù)據(jù)庫進(jìn)行演示。這種驅(qū)動(dòng)程序的主要優(yōu)點(diǎn)有3個(gè):它提供了連接幾乎所有平臺(tái)上的所有數(shù)據(jù)庫的能力。它可能是訪問低端桌面數(shù)據(jù)庫(例如Access)和應(yīng)用的程序的唯一方式。操作簡(jiǎn)單,適應(yīng)初學(xué)才練習(xí)。這種驅(qū)動(dòng)程序的缺點(diǎn)如下。ODBC驅(qū)動(dòng)程序需要安裝并加載到目標(biāo)機(jī)器上。JDBC和ODBC之間的轉(zhuǎn)換將在很大程度上影響系統(tǒng)的性能。2.本地API和部分Java編寫的驅(qū)動(dòng)程序這種類型的驅(qū)動(dòng)程序是把客戶機(jī)API上的JDBC調(diào)用轉(zhuǎn)換為對(duì)數(shù)據(jù)庫的調(diào)用。也就是說,這種類型的驅(qū)動(dòng)程序

6、是通過調(diào)用本地API來實(shí)現(xiàn)與數(shù)據(jù)庫的通信。這種類型的驅(qū)動(dòng)程序要比采用類型1方式的速度快很多,但它仍然存在著一些缺點(diǎn):它仍然需要在目標(biāo)機(jī)器上安裝本地代碼。JDBC所依賴的本地接口在不同的Java虛擬機(jī)供應(yīng)商以及不同的操作系統(tǒng)上是不同的。3.JDBC網(wǎng)絡(luò)純Java驅(qū)動(dòng)程序這種驅(qū)動(dòng)程序根據(jù)三層結(jié)構(gòu)建立:網(wǎng)絡(luò)協(xié)議驅(qū)動(dòng)、中間件服務(wù)器和數(shù)據(jù)庫服務(wù)。該類型的驅(qū)動(dòng)程序由中間件服務(wù)器提供,這樣客戶端程序可以使用數(shù)據(jù)庫無關(guān)的協(xié)議和中間件服務(wù)器進(jìn)行通信,中間件服務(wù)器再將客戶端的JDBC調(diào)用轉(zhuǎn)發(fā)給數(shù)據(jù)庫進(jìn)行處理。這種方式的驅(qū)動(dòng)程序有以下

7、優(yōu)點(diǎn):不需要客戶機(jī)上有任何本地代碼。不需要客戶安裝任何程序。大部分功能實(shí)現(xiàn)都在server端,所以這種驅(qū)動(dòng)可以設(shè)計(jì)的很小,可以非常快速的加載到內(nèi)存中。缺點(diǎn)為:中間件層仍然需要有配置其他數(shù)據(jù)庫驅(qū)動(dòng)程序,并且由于多了一個(gè)中間層傳遞數(shù)據(jù),它的執(zhí)行效率還不是最好。4.本地協(xié)議純Java驅(qū)動(dòng)程序該類型的驅(qū)動(dòng)程序中包含了特定數(shù)據(jù)庫的訪問協(xié)議,使得客戶端可以直接和數(shù)據(jù)庫進(jìn)行通信。這種方式的驅(qū)動(dòng)程序有以下優(yōu)點(diǎn):效率高,速度快。驅(qū)動(dòng)程序可以動(dòng)態(tài)的被下載。缺點(diǎn)為:對(duì)于不同的數(shù)據(jù)庫需要下載不同的驅(qū)動(dòng)程序。這四種驅(qū)動(dòng)程序的屬性如表

8、23.1所示表23.1驅(qū)動(dòng)程序的類型及其屬性驅(qū)動(dòng)程序種類純Java網(wǎng)絡(luò)協(xié)議JDBC-ODBC橋加ODBC非直接本地API和部分Java非直接JDBC網(wǎng)絡(luò)純Java是要求連接器本地協(xié)議純Java是直接23.1.3如何獲得JDBC驅(qū)動(dòng)程序在本實(shí)例中,我們使用第4種類型的驅(qū)動(dòng)程序。要想得到某個(gè)數(shù)據(jù)庫的驅(qū)動(dòng)程序,可以從該數(shù)據(jù)庫廠商的網(wǎng)站上進(jìn)行下載,例如

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。