<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          一篇文章帶你搞定Java的數(shù)據(jù)庫訪問

          共 2487字,需瀏覽 5分鐘

           ·

          2021-06-05 13:30

          點(diǎn)擊上方“Java進(jìn)階學(xué)習(xí)交流”,進(jìn)行關(guān)注

          后臺(tái)回復(fù)“Java”即可獲贈(zèng)Java學(xué)習(xí)資料

          醉后不知天在水,滿船清夢(mèng)壓星河。

          大家好,我是Java進(jìn)階者,今天小編帶大家一起來學(xué)習(xí)JDBC技術(shù)!

          一、前言

          在應(yīng)用程序開發(fā)中,需要使用數(shù)據(jù)庫管理和存儲(chǔ)各種數(shù)據(jù)。在Java中,提供了一個(gè)JDBC技術(shù)(Java Database Connectivity,JDBC,Java數(shù)據(jù)庫連接),它的作用是連接數(shù)據(jù)庫并訪問。接下來小編帶大家一起來學(xué)習(xí)JDBC技術(shù)!


          二、關(guān)系數(shù)據(jù)庫

          1.目前,各種關(guān)系數(shù)據(jù)庫的操作基本使用SQL語言,SQL(Structured Query Language)是一個(gè)結(jié)構(gòu)化查詢語言。

          2.常用的SQL語句,如下所示:

          命令功能例子
          CREATE創(chuàng)建表格CREATE TABLE Test(Id VARCHAR(20) NOT NULL,Name VARCHAR(20) )
          INSERT插入數(shù)據(jù)INSERT INTO Test VALUES('A01','張三')
          SELECT查詢數(shù)據(jù)SELECT * FROM Test WHERE Id='A01'
          DELETE刪除數(shù)據(jù)DELETE FROM Test WHERE Id='A01'
          UPDATE更新數(shù)據(jù)UPDATE Test set Id=Id+1
          DROP刪除表格DROP TABLE Test


          三、JDBC的概述

          1.JDBC是一種執(zhí)行SQL語句的Java API。它由一組使用Java語言編寫的類和接口組成,使開發(fā)人員可以使用Java API來編寫數(shù)據(jù)庫應(yīng)用程序。

          2.使用JDBC的技術(shù)向各種關(guān)系數(shù)據(jù)庫發(fā)送SQL語句就很方便,就不必為訪問Oracle數(shù)據(jù)庫專門寫一個(gè)程序,為訪問Sybase數(shù)據(jù)庫又專門寫一個(gè)程序,只需要JDBC API寫一個(gè)程序向相應(yīng)的數(shù)據(jù)庫發(fā)送SQL語句即可。開發(fā)人員使用Java語言和SQL語句編寫的數(shù)據(jù)庫應(yīng)用程序,可以在任何平臺(tái)上運(yùn)行。

          3.JDBC驅(qū)動(dòng)可以分為四種類型,包括了JDBC-ODBC橋、本地API驅(qū)動(dòng)、網(wǎng)絡(luò)協(xié)議驅(qū)動(dòng)、本地驅(qū)動(dòng)。在后面會(huì)詳細(xì)的介紹這四種類型。


          四、JDBC驅(qū)動(dòng)類型

          (一)JDBC-ODBC橋

          JDBC-ODBC橋:通過驅(qū)動(dòng)程序?qū)⑺械腏DBC調(diào)用傳給ODBC(Open Database Connectivity,ODBC,開放數(shù)據(jù)庫互連),然后ODBC調(diào)用本地?cái)?shù)據(jù)庫接口訪問數(shù)據(jù)庫,這種執(zhí)行效率很低,它是不適合需要存儲(chǔ)大量數(shù)據(jù)的應(yīng)用。

          如下圖所示:

          1)首先SQL命令通過ODBC-Bridge傳給ODBC,再由ODBC連接數(shù)據(jù)庫并傳遞SQL命令到數(shù)據(jù)庫中。

          2)ODBC接受數(shù)據(jù)庫返回結(jié)果,然后通過ODBC-Bridge返回的結(jié)果給應(yīng)用程序。


          (二)本地API驅(qū)動(dòng)

          本地API驅(qū)動(dòng):通過JDBC-Native API橋接器的轉(zhuǎn)換,然后把客戶機(jī)API上的JDBC調(diào)用轉(zhuǎn)換成Oracle、 Sybase、Informix、DB2,最后存取數(shù)據(jù)庫。

          如下圖所示:

          1)首先應(yīng)用程序去調(diào)用JDBC Driver,然后JDBC Driver使用本地函數(shù)庫和數(shù)據(jù)庫進(jìn)行溝通。

          2)本地函數(shù)庫返回執(zhí)行結(jié)果給JDBC Driver,最后JDBC Driver返回結(jié)果給應(yīng)用程序。


          (三)網(wǎng)絡(luò)協(xié)議驅(qū)動(dòng)

          網(wǎng)絡(luò)協(xié)議驅(qū)動(dòng):把JDBC 轉(zhuǎn)換成與 DBMS 無關(guān)的網(wǎng)絡(luò)協(xié)議,該協(xié)議又給某個(gè)服務(wù)器轉(zhuǎn)換成一種DBMS的協(xié)議。在該網(wǎng)絡(luò)服務(wù)器有個(gè)中間件(middleware)可以把Java客戶機(jī)連接到不同的數(shù)據(jù)庫中,它所使用的具體協(xié)議來自提供者。

          如下圖所示:

          1)通過SQL命令使JDBC Driver傳給Middleware Server中,然后Middleware Server把SQL命令傳給數(shù)據(jù)庫,并和數(shù)據(jù)庫進(jìn)行溝通。

          2)將結(jié)果返回給Middleware Server,最后JDBC Driver返回的結(jié)果給應(yīng)用程序。


          (四)本地協(xié)議驅(qū)動(dòng)

          本地協(xié)議驅(qū)動(dòng):通過把JDBC調(diào)用轉(zhuǎn)換成具體的數(shù)據(jù)庫服務(wù)器,讓它可以接受網(wǎng)絡(luò)協(xié)議,然后允許客戶機(jī)上來調(diào)用DBMS服務(wù)器(數(shù)據(jù)庫管理系統(tǒng)(Database Management System,DBMS)),它是Intranet訪問最有效的一個(gè)解決方法。

          如下圖所示:

          1)首先應(yīng)用程序把SQL命令傳給JDBC Driver,然后JDBC Driver通過連接數(shù)據(jù)庫傳給SQL命令。

          2)將執(zhí)行的結(jié)果返回給JDBC Driver,最后JDBC Driver返回結(jié)果給應(yīng)用程序。


          五、總結(jié)

          1.本文介紹了關(guān)系數(shù)據(jù)庫、JDBC的概述、JDBC驅(qū)動(dòng)類型。

          2.關(guān)系數(shù)據(jù)庫SQL是一種結(jié)構(gòu)化查詢語言,介紹它的常用SQL語句,例如增刪改查。

          3.JDBC是一種執(zhí)行SQL語句的Java API。它由一組使用Java語言編寫的類和接口組成,使開發(fā)人員可以使用Java API來編寫數(shù)據(jù)庫應(yīng)用程序。

          4.JDBC驅(qū)動(dòng)類型分為四種,包括了JDBC-ODBC橋、本地API驅(qū)動(dòng)、網(wǎng)絡(luò)協(xié)議驅(qū)動(dòng)、本地驅(qū)動(dòng),介紹了每一種驅(qū)動(dòng)類型的作用。

          5.希望大家通過本文的學(xué)習(xí),對(duì)你有所幫助!

          最后需要拓展包的小伙伴,可以在公眾號(hào)后臺(tái)回復(fù)“拓展包”關(guān)鍵字進(jìn)行獲取。

          我是Java進(jìn)階者,希望大家通過本文的學(xué)習(xí),對(duì)你有所幫助!歡迎大家加我微信,有問題可以隨時(shí)幫大家解決噢,交個(gè)朋友也好哇~

          ------------------- End -------------------

          往期精彩文章推薦:

          歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持

          想加入Java學(xué)習(xí)群請(qǐng)?jiān)诤笈_(tái)回復(fù)【入群

          萬水千山總是情,點(diǎn)個(gè)【在看】行不行

          瀏覽 46
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美视频中文在线看 | 北条麻妃九九九视频 | 老司机综合网 | 亚洲一二三四 | 男女日比视频 |