1.JDBC
注:jdbc是java封裝的數(shù)據(jù)庫(kù)的操作
Java DataBase Connectivity:(java數(shù)據(jù)庫(kù)連接)是一種可以執(zhí)行SQL語(yǔ)句的Java API,可以為多種數(shù)據(jù)庫(kù)提供統(tǒng)一訪問(wèn),是java語(yǔ)言編寫的類和接口的組成.jdbc提供了一種基準(zhǔn),據(jù)此可以構(gòu)建更高級(jí)的工具和接口,使開(kāi)發(fā)人員能夠編寫數(shù)據(jù)庫(kù)應(yīng)用程序
2.jdbc的原生開(kāi)發(fā)步驟
? ? 1:注冊(cè)驅(qū)動(dòng)====>數(shù)據(jù)庫(kù)的驅(qū)動(dòng):不同數(shù)據(jù)庫(kù)開(kāi)發(fā)商為了某一種開(kāi)發(fā)語(yǔ)言環(huán)境能夠?qū)崿F(xiàn)統(tǒng)一數(shù)據(jù)庫(kù)調(diào)用而開(kāi)發(fā)的一個(gè)程序,它的作用相當(dāng)于===一個(gè)翻譯人員===將java語(yǔ)言中對(duì)數(shù)據(jù)庫(kù)的調(diào)用語(yǔ)言通過(guò)這個(gè)翻譯翻譯成各個(gè)種類的數(shù)據(jù)庫(kù)自己的數(shù)據(jù)庫(kù)語(yǔ)言,當(dāng)然這個(gè)翻譯(數(shù)據(jù)庫(kù)驅(qū)動(dòng))是由各個(gè)開(kāi)發(fā)商針對(duì)統(tǒng)一的接口自定義開(kāi)發(fā)的
? ? 注:數(shù)據(jù)庫(kù)驅(qū)動(dòng),就是連接數(shù)據(jù)庫(kù)的,直接與數(shù)據(jù)庫(kù)交互的.
? ? 2:獲得連接
? ? 3:創(chuàng)建執(zhí)行sql語(yǔ)句的對(duì)象
? ? 4:執(zhí)行sql語(yǔ)句,處理結(jié)果
? ? 5:關(guān)閉資源
3.為什么要使用jdbc來(lái)操作數(shù)據(jù)庫(kù)
不同數(shù)據(jù)庫(kù)的驅(qū)動(dòng)編寫語(yǔ)言不一樣,這時(shí)要使用相關(guān)的數(shù)據(jù)庫(kù),就要學(xué)習(xí)相關(guān)數(shù)據(jù)庫(kù)的驅(qū)動(dòng),sun公司為了規(guī)范統(tǒng)一,定義了JDBC這套接口,所有數(shù)據(jù)庫(kù)驅(qū)動(dòng)遵循這套規(guī)范,我們只要學(xué)習(xí)這套規(guī)范,使用JDBC操作數(shù)據(jù)庫(kù)即可,
注:使用JDBC操作數(shù)據(jù)庫(kù)必須要有數(shù)據(jù)庫(kù)驅(qū)動(dòng)包,JDBC是直接操作數(shù)據(jù)庫(kù)驅(qū)動(dòng)包進(jìn)行做數(shù)據(jù)庫(kù)的
如圖:
4.數(shù)據(jù)庫(kù)連接池
連接池其實(shí)就是一個(gè)容器(集合),存放數(shù)據(jù)庫(kù)連接的容器.
當(dāng)系統(tǒng)初始化好后,容器被創(chuàng)建,容器中會(huì)申請(qǐng)一些連接對(duì)象,當(dāng)用戶來(lái)訪問(wèn)數(shù)據(jù)時(shí),從容器中獲取連接對(duì)象,當(dāng)用戶訪問(wèn)完畢后,會(huì)將連接對(duì)象歸還給容器
優(yōu)點(diǎn)
1.節(jié)約資源,減輕服務(wù)器壓力
2.提高連接復(fù)用性,用戶訪問(wèn)高效