版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、數(shù)據(jù)庫編程,JDBC概述,JDBC (Java Database Connectivity)。 Java語言有著廣泛的應(yīng)用前景,其中一個(gè)重要的方面就是與各類數(shù)據(jù)庫連接查詢的SQL語句的實(shí)現(xiàn)。 SQL是一個(gè)綜合的、通用的、功能極強(qiáng)的關(guān)系數(shù)據(jù)庫語言,它包括數(shù)據(jù)定義、數(shù)據(jù)操縱、數(shù)據(jù)管理、存取保護(hù)和處理控制等多種功能。利用表、索引、碼、行、列等來確定存儲(chǔ)位置。 SQL語言本身并不是一個(gè)很完整的編程語言,一般它都與其他編程語言結(jié)合起來使用,JDBC就是將java語言與SQL結(jié)合的一個(gè)很好的編程接口。,JDBC概述,JDBC庫作為執(zhí)行SQL語句的接口,它允許大量的程序針對(duì)JDBC庫接口編程而不需要過多的擔(dān)
2、心應(yīng)用程序使用的是什么數(shù)據(jù)庫。 JDBC應(yīng)用程序與其使用的特定類型的數(shù)據(jù)庫系統(tǒng)之間有很好的隔離,因此不需要針對(duì)特定的數(shù)據(jù)庫重新編寫。,JDBC概述,JDBC概述,Java應(yīng)用程序通過JDBC API(java.sql包)與數(shù)據(jù)庫連接,而實(shí)際的動(dòng)作則是由JDBC驅(qū)動(dòng)程序管理器(JDBC Driver Manager)通過JDBC驅(qū)動(dòng)程序與數(shù)據(jù)庫系統(tǒng)進(jìn)行連接。 真正提供存取數(shù)據(jù)庫功能的是JDBC驅(qū)動(dòng)程序,用戶如果想要存取某一種具體的數(shù)據(jù)庫系統(tǒng)中存儲(chǔ)的數(shù)據(jù),就必須要擁有對(duì)應(yīng)于該數(shù)據(jù)庫系統(tǒng)的驅(qū)動(dòng)程序。 JDBC提供的主要功能如下: (1) 同一個(gè)數(shù)據(jù)庫建立連接; (2) 向數(shù)據(jù)庫發(fā)送SQL語句; (3
3、) 處理數(shù)據(jù)庫返回的結(jié)果。,數(shù)據(jù)庫連接,每個(gè)JDBC應(yīng)用程序至少要有一個(gè)JDBC驅(qū)動(dòng)程序版本,JDBC驅(qū)動(dòng)程序是Driver接口類的實(shí)現(xiàn)。 Driver類是驅(qū)動(dòng)程序廠家實(shí)現(xiàn)的接口,Driver使DriverManager和JDBC應(yīng)用程序?qū)涌梢元?dú)立于具體的數(shù)據(jù)庫系統(tǒng)。 通過java.sql 庫提供的統(tǒng)一接口,使得可以在java環(huán)境下不必對(duì)程序作大規(guī)模的修改,只要更改相應(yīng)的驅(qū)動(dòng)程序,即可實(shí)現(xiàn)對(duì)各類數(shù)據(jù)庫的操作,JDBC API,java.sql.DriveManager負(fù)責(zé)裝載、拆除驅(qū)動(dòng)程序,負(fù)責(zé)連接驅(qū)動(dòng)程序。 java.sql.Connection實(shí)現(xiàn)對(duì)某一數(shù)據(jù)庫的連接功能(建立連接)。 ja
4、va.sql.Statement 在一個(gè)給定的連接中作為執(zhí)行SQL語句的容器。 java.sql.PreparedStatement用于執(zhí)行預(yù)編譯的SQL聲明 java.sql.CallableStatement用于執(zhí)行數(shù)據(jù)庫中存儲(chǔ)過程的調(diào)用 java.sql.ResultSet 保存SQL語句執(zhí)行結(jié)果,編寫JDBC程序的步驟,加載JDBC驅(qū)動(dòng)程序 創(chuàng)建數(shù)據(jù)庫連接 執(zhí)行SQL語句 接收并處理SQL的返回結(jié)果 關(guān)閉創(chuàng)建的各個(gè)對(duì)象,JDBC編程模型,JDBC編程舉例,String className=sun.jdbc.odbc.JdbcOdbcDriver; Class.forName(class
5、Name); String url=jdbc:odbc:mydsn Connection con=DriverManager.getConnection(url); Statement stmt=con.createStatement(); String sql=select * from authors; ResultSet rs=stmt.executeQuery(sql); while(rs.next() System.out.println(rs.getString(1); rs.close(); stmt.close(); con.close();;,DriverManager,JD
6、BC數(shù)據(jù)庫驅(qū)動(dòng)程序由實(shí)現(xiàn)了Driver接口的類定義。 DriverManager類負(fù)責(zé)建立與數(shù)據(jù)源的連接,通過JDBC驅(qū)動(dòng)程序進(jìn)行訪問。 為了使用你想要使用的驅(qū)動(dòng)程序,可以通過調(diào)用Class類中的靜態(tài)方法forName(),傳遞一個(gè)String對(duì)象作為參數(shù),其中包含著該驅(qū)動(dòng)程序的類名,這樣可以明確裝入驅(qū)動(dòng)程序。 如果無法找到指定的驅(qū)動(dòng)程序類名,forName()方法會(huì)拋出類型未ClassNotFoundException的異常。 每個(gè)驅(qū)動(dòng)程序類一般情況下都會(huì)在裝入的時(shí)候生成一個(gè)自身的實(shí)例,并且通過自動(dòng)調(diào)用DriverManager類方法注冊(cè)這個(gè)實(shí)例。,JDBC-ODBC橋,JDBC-ODBC橋
7、是一種類型的JDBC驅(qū)動(dòng)程序,它通過將JDBC操作轉(zhuǎn)換為ODBC(Open DataBase Connectivity)操作來實(shí)現(xiàn)JDBC操作 JDBC-ODBC橋驅(qū)動(dòng)程序由JavaSoft公司提出,Intersolv公司研制。提出這種類型驅(qū)動(dòng)程序的原因,是由于ODBC已經(jīng)成為數(shù)據(jù)庫訪問的業(yè)界標(biāo)準(zhǔn),并得到了廣泛應(yīng)用。利用JDBC-ODBC橋可以使程序開發(fā)人員不需要學(xué)習(xí)更多的知識(shí)就可以編寫JDBC應(yīng)用程序,并能夠充分利用現(xiàn)有的大量ODBC數(shù)據(jù)源。,JDBC-ODBC橋,JDBC-ODBC橋驅(qū)動(dòng)程序可以使JDBC能夠訪問幾乎所有類型的數(shù)據(jù)庫,它隨著sun.jdbc.odbc包與Java 2 SDK一起自動(dòng)安裝,無需另外的的特殊配置。 當(dāng)我們加載的類名為:sun.jdbc.odbc.JdbcOdbcDriver時(shí),就意味著我們使用了JDBC-ODBC橋的方式來訪問數(shù)據(jù)庫,JDBC URL,JDBC URL提供了一種標(biāo)識(shí)數(shù)據(jù)庫的方法,可以使相
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版機(jī)床進(jìn)出口買賣合同范本詳析2篇
- 2024年禁牧區(qū)水資源保護(hù)與管理合同
- 專業(yè)化油漆施工協(xié)議(2024年版)版B版
- 二零二五年高性能環(huán)保材料供應(yīng)與技術(shù)研發(fā)協(xié)議2篇
- 天府新區(qū)職業(yè)學(xué)院《信息內(nèi)容安全的理論與應(yīng)用》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五版快遞行業(yè)專用包裝材料供應(yīng)協(xié)議2篇
- 2024版股權(quán)投資協(xié)議(投資金額和股權(quán)比例)3篇
- 2024運(yùn)輸管理實(shí)訓(xùn)機(jī)構(gòu)運(yùn)營(yíng)合作協(xié)議3篇
- 天津商業(yè)大學(xué)寶德學(xué)院《圖像處理與機(jī)器視覺》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年高端混凝土預(yù)制構(gòu)件委托加工合同3篇
- 2024年江蘇省《輔警招聘考試必刷500題》考試題庫帶答案(達(dá)標(biāo)題)
- 高中家長(zhǎng)會(huì) 高三上學(xué)期期末家長(zhǎng)會(huì)
- 深圳南山區(qū)2024-2025上學(xué)期小學(xué)四年級(jí)數(shù)學(xué)期末試卷
- 藥店員工培訓(xùn)
- 環(huán)衛(wèi)工節(jié)前安全培訓(xùn)
- 李四光《看看我們的地球》原文閱讀
- 2024年全國(guó)“紀(jì)檢監(jiān)察”業(yè)務(wù)相關(guān)知識(shí)考試題庫(附含答案)
- DB32T 2305-2013 內(nèi)陸水域魚類資源調(diào)查規(guī)范
- 《陋室銘》(過關(guān)檢測(cè))(原卷版)-2024年中考語文課內(nèi)39篇文言文閱讀
- 福建省福州市2023-2024學(xué)年高一上學(xué)期期末考試物理試卷 附答案
- 2024-2030年中國(guó)IT運(yùn)營(yíng)管理(ITOM)軟件行業(yè)市場(chǎng)發(fā)展趨勢(shì)與前景展望戰(zhàn)略研究報(bào)告
評(píng)論
0/150
提交評(píng)論