jdbc概念 jdbc開(kāi)發(fā)的基本過(guò)程_第1頁(yè)
已閱讀1頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、JDBC概念JDBC開(kāi)發(fā)的基本過(guò)程使用JDBC開(kāi)發(fā)持久層,使用JDBC開(kāi)發(fā)持久層,抽象存儲(chǔ)對(duì)象(PO)設(shè)計(jì)對(duì)象數(shù)據(jù)類(lèi)型與關(guān)系數(shù)據(jù)類(lèi)型的映射關(guān)系根據(jù)映射關(guān)系和biz層對(duì)持久層的功能需求,使用JDBC實(shí)現(xiàn)這些功能,根據(jù)映射關(guān)系和biz層對(duì)持久層的功能需求,使用JDBC實(shí)現(xiàn)這些功能,一致性完整性實(shí)時(shí)性,設(shè)計(jì)對(duì)象數(shù)據(jù)類(lèi)型與關(guān)系數(shù)據(jù)類(lèi)型的映射關(guān)系,一對(duì)一(共享主鍵,唯一外鍵)一對(duì)多(在多的一方設(shè)置外鍵)多對(duì)多(增加一張代表多對(duì)多的

2、關(guān)系表)繼承和多態(tài)(所有類(lèi)一張表,每個(gè)類(lèi)一張表,每個(gè)實(shí)體一張表),抽象存儲(chǔ)對(duì)象(PO),將biz層需要持久存儲(chǔ)的數(shù)據(jù)封裝成PO為每一個(gè)PO分配一個(gè)永不重復(fù)的OID,作為一個(gè)唯一標(biāo)識(shí)PO最好是一個(gè)標(biāo)準(zhǔn)的JavaBean,JDBC概念,JDBC是什么?JDBC能干什么?,JDBC是什么?,JDBC是一套協(xié)議,是JAVA開(kāi)發(fā)人員和數(shù)據(jù)庫(kù)廠商達(dá)成的協(xié)議,也就是由Sun定義一組接口,由數(shù)據(jù)庫(kù)廠商來(lái)實(shí)現(xiàn),以驅(qū)動(dòng)程序形式提供,并規(guī)定了JA

3、VA開(kāi)發(fā)人員訪問(wèn)數(shù)據(jù)庫(kù)所使用的方法的調(diào)用規(guī)范.這里很好的體現(xiàn)了接口的一個(gè)好處,它使標(biāo)準(zhǔn)的制定者與標(biāo)準(zhǔn)的實(shí)現(xiàn)者得到了分離。這也是我們?yōu)槭裁匆獜?qiáng)調(diào)要面向接口編程,而不要面向?qū)崿F(xiàn)。,JDBC能干什么?,JDBC提供了一套訪問(wèn)各種數(shù)據(jù)庫(kù)的統(tǒng)一接口,所以JDBC主要用途就是訪問(wèn)和操作數(shù)據(jù)庫(kù).它為JAVA應(yīng)用程序和數(shù)據(jù)庫(kù)之間進(jìn)行數(shù)據(jù)通信提供“橋梁“的作用。在企業(yè)開(kāi)發(fā)中它是實(shí)現(xiàn)持久層的一種技術(shù) .,JDBC開(kāi)發(fā)的基本過(guò)程,注冊(cè)加一個(gè)drive

4、r驅(qū)動(dòng) 創(chuàng)建連接 Connection創(chuàng)建一個(gè)Statement(發(fā)送sql) 執(zhí)行sql語(yǔ)句處理sql結(jié)果 關(guān)閉Statement和Connection,關(guān)閉Statement和Connection,必須要做的,因?yàn)檫@些資源是不會(huì)自動(dòng)釋放的,必須要自己關(guān)閉。必須按照ResultSet,Statement,Connection這樣的順序進(jìn)行關(guān)閉,處理sql結(jié)果,ResultSet的next()方法會(huì)操作一個(gè)游標(biāo)從第一條記錄的

5、前邊開(kāi)始讀取,直到最后一條記錄,執(zhí)行sql語(yǔ)句,Statement中executeUpdate(String sql) DDL和DML executeQuery(String sql)方法可以使用select語(yǔ)句查詢(xún),并且返回一個(gè)結(jié)果集ResultSet通過(guò)遍歷這個(gè)結(jié)果集,可以獲得select語(yǔ)句的查詢(xún)結(jié)果。 PreparedStatement 可以使用參數(shù)替代sql語(yǔ)句中的某些參數(shù)使用 "?"代替,他先將帶參數(shù)

6、的sql語(yǔ)句發(fā)送到數(shù)據(jù)庫(kù),進(jìn)行編譯,然后PreparedStatement會(huì)將參數(shù)發(fā)送給數(shù)據(jù)庫(kù)。在使用PreparedStatement時(shí),在設(shè)置相應(yīng)參數(shù)時(shí),要指明參數(shù)的位置和類(lèi)型,以及給出參數(shù)值根據(jù)不同的參數(shù)類(lèi)型使用不同的setXXX(參數(shù)的位置,參數(shù)值)來(lái)設(shè)置參數(shù),創(chuàng)建一個(gè)Statement(發(fā)送sql),Statement stat=con.createStatement();PreparedStatement ps=con

7、.prepareStatement(sql);,創(chuàng)建連接 Connection,JDBC的數(shù)據(jù)庫(kù)連接是應(yīng)用工廠模式來(lái)實(shí)現(xiàn)的 DriverManager.getConnetion(String url,String user,String passwd); 這個(gè)方法的實(shí)質(zhì)是把參數(shù)傳到實(shí)際的Driver中的connect()方法中來(lái)獲得數(shù)據(jù)庫(kù)連接的。 Url值是由連接數(shù)據(jù)庫(kù)的協(xié)議和數(shù)據(jù)庫(kù)的IP地址及端口號(hào)還有要連接的庫(kù)名組成 常見(jiàn)數(shù)

8、據(jù)庫(kù)的url格式,常見(jiàn)數(shù)據(jù)庫(kù)的url格式,Oracle:Jdbc:oracle:thin(協(xié)議):@XXX.XXX.XXX:XXXX(IP地址及端口號(hào)):xxxx(庫(kù)名) MySql:Jdbc:mysql(協(xié)議)://XXX.XXX.XXX:XXX(IP地址及端口號(hào))/xxxx(庫(kù)名),注冊(cè)加一個(gè)driver驅(qū)動(dòng),JDBC在使用前要先加載驅(qū)動(dòng).JDBC對(duì)于使用者要有一致性,對(duì)不同的數(shù)據(jù)庫(kù)其使用方法都是相同的。 driver開(kāi)

9、發(fā)必須要實(shí)現(xiàn)Driver接口。以便DriverManager加載,注冊(cè),管理 注冊(cè)加載一個(gè)driver驅(qū)動(dòng),可以有以下形式:,加載驅(qū)動(dòng)的形式,Class.forName(Driver包名.Driver類(lèi)名) Driver d = new Driver類(lèi)();DriverManager.registerDriver(d);驅(qū)動(dòng)也可以在程序運(yùn)行時(shí)使用系統(tǒng)屬性名加載:Java -Djdbc.drivers=驅(qū)動(dòng)名 類(lèi)名常見(jiàn)數(shù)據(jù)庫(kù)驅(qū)動(dòng)全

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論