溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

JDBC驅(qū)動(dòng)程序有4種類型是什么

發(fā)布時(shí)間:2020-10-20 17:28:28 來(lái)源:億速云 閱讀:1181 作者:小新 欄目:編程語(yǔ)言

這篇文章主要介紹JDBC驅(qū)動(dòng)程序有4種類型是什么,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

JDBC驅(qū)動(dòng)程序是一個(gè)軟件組件,它使Java應(yīng)用程序能夠與數(shù)據(jù)庫(kù)進(jìn)行交互。JDBC驅(qū)動(dòng)程序有4種類型,分別為:

1、JDBC-ODBC Bridge驅(qū)動(dòng)程序

2、Native-API 驅(qū)動(dòng)程序(部分是java驅(qū)動(dòng)程序)

3、網(wǎng)絡(luò)協(xié)議驅(qū)動(dòng)(完全java驅(qū)動(dòng))

4、本地協(xié)議驅(qū)動(dòng)(完全java驅(qū)動(dòng)程序)

下面我們來(lái)詳細(xì)介紹一下這4種JDBC驅(qū)動(dòng)程序,讓大家了解每種驅(qū)動(dòng)程序的優(yōu)點(diǎn)和缺點(diǎn)。

Type 1:JDBC-ODBC Bridge驅(qū)動(dòng)程序

JDBC-ODBC Bridge驅(qū)動(dòng)程序使用ODBC驅(qū)動(dòng)程序連接到數(shù)據(jù)庫(kù)。JDBC-ODBC橋驅(qū)動(dòng)程序利用現(xiàn)成的ODBC架構(gòu),將JDBC調(diào)用轉(zhuǎn)換為ODBC調(diào)用,避免了JDBC無(wú)驅(qū)動(dòng)可用的尷尬。

不過(guò),由于橋接的限制,并非所有功能都能直接轉(zhuǎn)換并正常調(diào)用,而多層調(diào)用轉(zhuǎn)換對(duì)速度也有一定的影響,除非沒(méi)有其他解決方案,否則不應(yīng)采用橋接架構(gòu)。

JDBC驅(qū)動(dòng)程序有4種類型是什么

注:在Java 8中,已刪除JDBC-ODBC Bridge。

優(yōu)點(diǎn):

1、使用方便。

2、可以輕松連接到任何數(shù)據(jù)庫(kù)。

缺點(diǎn):

1、性能降低,因?yàn)镴DBC方法調(diào)用被轉(zhuǎn)換為ODBC函數(shù)調(diào)用。

2、ODBC驅(qū)動(dòng)程序需要安裝在客戶端計(jì)算機(jī)上。

Type 2:Native-API驅(qū)動(dòng)程序

Native API驅(qū)動(dòng)程序使用數(shù)據(jù)庫(kù)的客戶端庫(kù),會(huì)直接調(diào)用數(shù)據(jù)庫(kù)提供的原生鏈接庫(kù)或客戶端,因?yàn)闆](méi)有中間過(guò)程,訪問(wèn)速度通常表現(xiàn)良好。

這來(lái)驅(qū)動(dòng)程序?qū)DBC方法調(diào)用轉(zhuǎn)換為數(shù)據(jù)庫(kù)API的本機(jī)調(diào)用。它不是完全用java編寫的。

JDBC驅(qū)動(dòng)程序有4種類型是什么

優(yōu)點(diǎn):

性能升級(jí)比JDBC-ODBC橋驅(qū)動(dòng)程序好,訪問(wèn)速度通常表現(xiàn)良好。

缺點(diǎn):

1、需要在每臺(tái)客戶端計(jì)算機(jī)上安裝Native驅(qū)動(dòng)程序。

2、客戶端庫(kù)需要安裝在客戶端計(jì)算機(jī)上。

Type 3:網(wǎng)絡(luò)協(xié)議驅(qū)動(dòng)(Network Protocol)

網(wǎng)絡(luò)協(xié)議驅(qū)動(dòng)程序使用中間件(應(yīng)用程序服務(wù)器)將JDBC調(diào)用直接或間接轉(zhuǎn)換為獨(dú)立于數(shù)據(jù)庫(kù)的協(xié)議,主要目的是為了獲得更好的架構(gòu)靈活性;它完全是用java編寫的。

JDBC驅(qū)動(dòng)程序有4種類型是什么

優(yōu)點(diǎn):

由于應(yīng)用程序服務(wù)器可以執(zhí)行許多任務(wù),如審計(jì),負(fù)載平衡,日志記錄等,因此不需要客戶端庫(kù)。

缺點(diǎn):

1、客戶端計(jì)算機(jī)上需要網(wǎng)絡(luò)支持。

2、需要在中間層中完成特定于數(shù)據(jù)庫(kù)的編碼。

3、網(wǎng)絡(luò)協(xié)議驅(qū)動(dòng)程序的維護(hù)變得昂貴,因?yàn)樗枰谥虚g層中完成特定于數(shù)據(jù)庫(kù)的編碼。

Type 4:本地協(xié)議驅(qū)動(dòng)(Native Protocol )

本地協(xié)議驅(qū)動(dòng):將JDBC調(diào)用直接轉(zhuǎn)換為數(shù)據(jù)庫(kù)特定的網(wǎng)絡(luò)通信協(xié)議。它是最常見(jiàn)的驅(qū)動(dòng)程序類型,我們開(kāi)發(fā)中使用的驅(qū)動(dòng)包jar基本都屬于這類驅(qū)動(dòng),通常是由數(shù)據(jù)庫(kù)廠商直接提供,例:mysql-connector-java。

因?yàn)槭鞘褂镁W(wǎng)絡(luò)通信,驅(qū)動(dòng)程序可以完全用java編寫,支持跨平臺(tái)部署,性能也較好。

JDBC驅(qū)動(dòng)程序有4種類型是什么

優(yōu)點(diǎn):

1、性能優(yōu)于所有其他驅(qū)動(dòng)程序。

2、客戶端或服務(wù)器端不需要軟件。

缺點(diǎn):

驅(qū)動(dòng)程序依賴于數(shù)據(jù)庫(kù)。

以上是JDBC驅(qū)動(dòng)程序有4種類型是什么的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI