版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 淺談JDBC工作原理 點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本目錄JDBC應(yīng)用背景JDBC概述JDBC工作原理通過(guò)JDBC實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本JDBC應(yīng)用背景點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本JDBC應(yīng)用背景 在Internet的熱潮席卷之下,原本在單機(jī)或局域網(wǎng)中使用的數(shù)據(jù)庫(kù)逐步移植至Internet中,Web技術(shù)與數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)相互融合成為必然趨勢(shì),數(shù)據(jù)庫(kù)廠(chǎng)家和Web公司紛紛推出各自的產(chǎn)品和中間件支持Web技術(shù)和DBMS的融合,隨著Web應(yīng)用領(lǐng)域的不斷擴(kuò)展、信息量的不斷增加,靜態(tài)的Web頁(yè)面越來(lái)越不能滿(mǎn)足人們對(duì)W
2、eb信息服務(wù)的動(dòng)態(tài)性、實(shí)時(shí)性和交互性的要求。為了進(jìn)行網(wǎng)絡(luò)上數(shù)據(jù)的高效存取,實(shí)現(xiàn)交互式動(dòng)態(tài)Web頁(yè)面,就必須以大量數(shù)據(jù)資源為基礎(chǔ),因此必然要在Web中引入數(shù)據(jù)庫(kù)。 Web數(shù)據(jù)庫(kù)是指將數(shù)據(jù)庫(kù)技術(shù)與Web技術(shù)融合,使數(shù)據(jù)庫(kù)成為Web的重要組成部分的數(shù)據(jù)庫(kù)。點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本JDBC應(yīng)用背景 B/S結(jié)構(gòu)將數(shù)據(jù)處理過(guò)程分為表示層、功能層和數(shù)據(jù)層三部分,分別由Web瀏覽器、具有應(yīng)用程序擴(kuò)展功能的Web服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器實(shí)現(xiàn)。 點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本JDBC應(yīng)用背景 客戶(hù)機(jī)和服務(wù)器或者服務(wù)器和服務(wù)器之間傳送數(shù)據(jù),實(shí)現(xiàn)客戶(hù)機(jī)群和服務(wù)器群之間的通信。中間
3、件在整個(gè)分布式系統(tǒng)中起數(shù)據(jù)總線(xiàn)的作用各種異構(gòu)系統(tǒng)通過(guò)中間件有機(jī)地結(jié)合成一個(gè)整體。 在客戶(hù)機(jī)里的應(yīng)用程序需要網(wǎng)絡(luò)上某個(gè)服務(wù)器中的數(shù)據(jù)或服務(wù)時(shí),應(yīng)用程序需訪(fǎng)問(wèn)中間件,中間件將查找數(shù)據(jù)源或服務(wù),并在發(fā)送應(yīng)用程序請(qǐng)求后重新打包響應(yīng),將其傳回應(yīng)用程序。點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本JDBC技術(shù)概述點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本JDBC技術(shù)概述點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本JDBC概述JDBC設(shè)計(jì)目的點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本JDBC概述JDBC與ODBC對(duì)比點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本JDBC工作原理點(diǎn)擊添加
4、文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本JDBC工作原理點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本JDBC工作原理JDBC主要功能創(chuàng)建與數(shù)據(jù)庫(kù)的連接;發(fā)送SQL語(yǔ)句到任何關(guān)系型數(shù)據(jù)庫(kù)中;處理數(shù)據(jù)并查詢(xún)結(jié)果。點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本 創(chuàng)建與數(shù)據(jù)庫(kù)的連接1.應(yīng)用必要的包 import java.sql.*; /它包含有操作數(shù)據(jù)庫(kù)的各個(gè)類(lèi)的接口2.加載連接數(shù)據(jù)庫(kù)的驅(qū)動(dòng)程序類(lèi) 為實(shí)現(xiàn)與特定的數(shù)據(jù)庫(kù)相連接,JDBC必須加載相應(yīng)的驅(qū)動(dòng)程序類(lèi)。這通??梢圆捎肅lass.forName()方法顯示地加載一個(gè)驅(qū)動(dòng)程序類(lèi),由驅(qū)動(dòng)程序負(fù)責(zé)向DriverManager登記注冊(cè)并在與數(shù)據(jù)庫(kù)
5、相連接時(shí),DriverManager將使用此驅(qū)動(dòng)程序。 Class.forName(“sun.jdbc.odbc.JdbcDriver”); /例如: mysql的驅(qū)動(dòng)程序連接:”com.mysql.jdbc.Driver” sqlServer的驅(qū)動(dòng)程序連接: com.microsoft.jdbc.sqlserver.SQLServerDriver“ Oracle的驅(qū)動(dòng)程序連接: oracle.jdbc.driver.OracleDriver注意:這條語(yǔ)句直接加載了sun公司提供的JDBC-ODBC Bridge驅(qū)動(dòng)程序類(lèi)。3.創(chuàng)建與數(shù)據(jù)源的連接 (1)數(shù)據(jù)源的URL: jdbc:databa
6、se locator其中: jdbc-指出要使用的JDBC subprotocal-定義驅(qū)動(dòng)程序類(lèi)型 database locator-提供網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的位置和端口號(hào)(包括主機(jī)名,端口和數(shù)據(jù)庫(kù)名等) 如: jdbc:odbc:/:port/Dbfile Oracle- “jdbc:oracle:thin:localhost:1521:數(shù)據(jù)庫(kù)名; sqlServer- jdbc:microsoft:sqlserver:/機(jī)器名:1433;DataBaseName=數(shù)據(jù)庫(kù)名; mysql- =“jdbc:mysql:/localhost:3306/數(shù)據(jù)庫(kù)名”; 點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)
7、擊添加文本JDBC 工作原理 點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本Java程序連接到不同數(shù)據(jù)庫(kù)public interface connenctionParam public void DBManager(); public Connection getConnection(String userName,String psw,String dbName);public class SqlServerParam implements connenctionParam public void DBManager() try Class.forName( com.microsoft.j
8、dbc.sqlserver.SQLServerDriver“); catch (ClassNotFoundException e) e.printStackTrace(); public Connection getConnection(String userName,String psw,String dbName) String url =jdbc:microsoft:sqlserver:/機(jī)器名:1433;DataBaseName=“+dbName; try conn=DriverManager.getConnection(url, userName,psw); catch (SQLEx
9、ception e) e.printStackTrace(); return conn;點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本public class OrcaleParam implements connenctionParam public void DBManager() try Class.forName(oracle.jdbc.driver.OracleDriver); catch (ClassNotFoundException e) e.printStackTrace(); public Connection getConnection(String userName,S
10、tring psw,String dbName) String url=“jdbc:oracle:thin:localhost:1521:+dbName; try conn=DriverManager.getConnection(url, userName,psw); catch (SQLException e) e.printStackTrace(); return conn; 點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本public class MySqlParam implements connenctionParam public void DBManager() try Clas
11、s.forName(”com.mysql.jdbc.Driver”); catch (ClassNotFoundException e) e.printStackTrace(); public Connection getConnection(String userName,String psw,String dbName) String url =“jdbc:mysql:/localhost:3306/”+dbName; try conn=DriverManager.getConnection(url, userName,psw); catch (SQLException e) e.prin
12、tStackTrace(); return conn; 點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本點(diǎn)擊添加文本發(fā)送SQL語(yǔ)句到任何關(guān)系型數(shù)據(jù)庫(kù)中1.創(chuàng)建Statement對(duì)象: 要想執(zhí)行一個(gè)SQL查詢(xún)語(yǔ)句,必須首先創(chuàng)建出Statement對(duì)象,它封裝代表要執(zhí)行的sql語(yǔ)句,并執(zhí)行SQL語(yǔ)句以返回一個(gè)ResultSet對(duì)象,這可以通過(guò)Connection類(lèi)中的creatStatement()方法來(lái)實(shí)現(xiàn)。如: Statement stmt=conn.creatStatement();2.執(zhí)行一個(gè)SQL查詢(xún)語(yǔ)句,以查詢(xún)數(shù)據(jù)庫(kù)中的數(shù)據(jù); (1)方法executQuery: 用于產(chǎn)生單個(gè)查詢(xún)結(jié)果集語(yǔ)句,例如S
13、ELECT語(yǔ)句等。 ResultSet rs=stmt.executQuery(”select * from stu”); (2)方法executeUpdate: 用于執(zhí)行INSERT,UPDATE,DELETE語(yǔ)句以及sql DDL語(yǔ)句,例如CREATE TABLE 和DROP TABLE。executeUpdate的返回值時(shí)一個(gè)正整數(shù),指示受影響行數(shù)。 int k=stmt.executeUpdate(“INSERT INTO stu (id,name,age) value(null,張三,15)”); int n= stmt.executeUpdate(“update stu set name=孫林,age=20 where id=6”); int m=stmt.executUpdate(“delete from stu where id=6”);
溫馨提示
- 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版工業(yè)自動(dòng)化設(shè)備安裝服務(wù)合同2篇
- 二零二五年度螺旋鋼管安全認(rèn)證與質(zhì)量監(jiān)督合同4篇
- 二零二五年度智能共享平臺(tái)兼職勞動(dòng)用工合同4篇
- 二零二四商業(yè)用房租賃合同協(xié)議-包含廣告位租賃條款3篇
- 2025年廠(chǎng)房搬遷與搬遷保險(xiǎn)合同范本4篇
- 二零二五版拌和站廢棄物處理與資源化利用合同3篇
- 2025年度二零二五年度購(gòu)房分期房地產(chǎn)產(chǎn)權(quán)過(guò)戶(hù)合同
- 二零二五年度特色農(nóng)產(chǎn)品超市獨(dú)家代理權(quán)轉(zhuǎn)讓合同
- 2025年度教育機(jī)構(gòu)臨時(shí)教師勞動(dòng)合同4篇
- 2025年跨境電商品牌授權(quán)居間服務(wù)合同4篇
- 2024版塑料購(gòu)銷(xiāo)合同范本買(mǎi)賣(mài)
- 【高一上】【期末話(huà)收獲 家校話(huà)未來(lái)】期末家長(zhǎng)會(huì)
- JJF 2184-2025電子計(jì)價(jià)秤型式評(píng)價(jià)大綱(試行)
- GB/T 44890-2024行政許可工作規(guī)范
- 二年級(jí)下冊(cè)加減混合豎式練習(xí)360題附答案
- 自帶藥物治療告知書(shū)
- 房產(chǎn)中介門(mén)店6S管理規(guī)范
- 吞咽解剖和生理研究
- TSG11-2020 鍋爐安全技術(shù)規(guī)程
- 汽輪機(jī)盤(pán)車(chē)課件
- 異地就醫(yī)備案?jìng)€(gè)人承諾書(shū)
評(píng)論
0/150
提交評(píng)論