版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
java的result類_java中的resultset類詳解?:JDBCsun:提供了?套通?性的接?:可以連接任何的數(shù)據(jù)庫:連接數(shù)據(jù)庫的具體得到實(shí)例,具體的數(shù)據(jù)庫?商實(shí)現(xiàn)的。連接數(shù)據(jù)的步驟(別忘了復(fù)制jar包):(1)注冊(cè)驅(qū)動(dòng):Class.forName():DriverManager(2)獲得鏈接對(duì)象:Connection(3)創(chuàng)建sql容器:語句:(4)執(zhí)?sql語句::stmt(5)查詢操作:遍歷結(jié)果集:ResultSet(6)關(guān)閉資源:ResultSet:詳解(更多可以看API)封裝了結(jié)果集的對(duì)象:內(nèi)部有?個(gè)可移動(dòng)的光標(biāo),默認(rèn)情況,指向第?條記錄集的上?條記錄:next();光標(biāo)下移動(dòng)?次:返回的boolean的值;判斷是否有結(jié)果可以被遍歷:previous();光標(biāo)上移動(dòng)?次:last()移動(dòng)到最后??:afterLast();移動(dòng)到最后??之后:beforeFirst()移動(dòng)到第??的之前:first()getObject();getInt();的GetString();getFloat();getDouble()getDate();getXxx()的的getMetaData()獲得結(jié)果集的元數(shù)據(jù):(重要)packagecom.yidongxueyuan.dao;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;publicclassStudentDaoImpl{
publicstaticvoidmain(String[]args){try{Class.forName("com.mysql.jdbc.Driver");Connectionconn=DriverManager.getConnection("jdbc:mysql://localhost:3306/jdbc01","root","root");Statementstmt=conn.createStatement();Stringsql="select*fromstudent";ResultSetrs=stmt.executeQuery(sql);/*while(rs.next()){intid=rs.getInt("sid");Stringname=rs.getString("sname");System.out.println(id+""+name);}*/rs.next();//上移動(dòng)?次://rs.previous();//rs.last();//rs.first();rs.beforeFirst();while(rs.next()){//Objectobject=rs.getObject("1");intid=rs.getInt("sid");Stringname=rs.getString("sname");System.out.println(id+""+name);}rs.close();stmt.close();conn.close();}catch(ClassNotFoundExceptione){e.printStackTrace();}catch(SQLExceptione){e.printStackTrace();}finally{}
}}//mysql封裝:?具類:封裝好的UTIL:packagecom.yidongxueyuan.dao;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;/**對(duì)JDBC進(jìn)?封裝:*/publicclassJdbcUtils2{//準(zhǔn)備數(shù)據(jù)庫的四?參數(shù):privatestaticfinalStringdriver="com.mysql.jdbc.Driver";privatestaticfinalStringurl="jdbc:mysql://localhost:3306/jdbc01";privatestaticfinalStringusername="root";privatestaticfinalStringpassword="root";/**驅(qū)動(dòng):只需要注冊(cè)?次就OK**/static{try{Class.forName(driver);}catch(ClassNotFoundExceptione){e.printStackTrace();}}/**1:創(chuàng)建?具類:直接獲得?個(gè)連接對(duì)象:*/publicstaticConnectiongetConnection(){
try{Connectionconnection=DriverManager.getConnection(url,username,password);returnconnection;}catch(SQLExceptione){thrownewRuntimeException(e);}}/**定義?個(gè)?法:釋放資源:直接將rsstmtconn全部釋放:*/publicstaticvoidrelease(ResultSetrs,Statementstmt,Connectionconn){if(rs!=null){try{rs.close();}catch(SQLExceptione){e.printStackTrace();}rs=null;}if(stmt!=null){try{stmt.close();}catch(SQLExceptione){e.printStackTrace();}stmt=null;}if(conn!=null){try{conn.close();}catch(SQLExceptione){e.printStackTrace();}conn=null;
}}}調(diào)??具類實(shí)現(xiàn)操作:packagecom.yidongxueyuan.dao;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;/**使??具類:對(duì)代碼進(jìn)?重構(gòu):*/publicclassStudentDaoImpl2{publicstaticvoidmain(String[]args){Connectionconn=null;Statementstmt=null;ResultSetrs=null;try{//使??具類獲得?個(gè)連接對(duì)象:conn=JdbcUtils2.getConnection();stmt=conn.createStatement();Stringsql="select*fromstudent";rs=stmt.executeQuery(sql);while(rs.next()){//Objectobject=rs.getObject("1");intid=rs.getInt("sid");Stringname=rs.getString("sname");System.out.println(id+""+name);}}catch(SQLExceptione){e.printStackTrace();}finally{JdbcUtils2.release(rs,stmt,conn);
}}}上?的代碼是硬編碼,如果是軟編碼的話步驟如下:1個(gè)???件內(nèi)容:#thisismymysqlconfigurationdriver=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/jdbc01username=rootpassword=root2jdbcutil.java讀取如下:packagecom.yidongxueyuan.dao;importjava.io.IOException;importjava.io.InputStream;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;importjava.util.Properties;/**讀取外部的配置?件*/publicclassJdbcUtil{privatestaticfinalPropertiesp=newProperties();privatestaticStringurl;privatestaticStringdriver;privatestaticStringusername;privatestaticStringpassword;static{try{//將外部的配置?件進(jìn)?讀取:類的加載器:InputStreamin=JdbcUtil.class.getClassLoader().getResourceAsStream("perties");p.load(in);
driver=p.getProperty("driver");Class.forName(driver);}catch(IOExceptione){e.printStackTrace();}catch(ClassNotFoundExceptione){e.printStackTrace();}}/**1:創(chuàng)建?具類:直接獲得?個(gè)連接對(duì)象:*/publicstaticConnectiongetConnection(){try{url=p.getProperty("url");username=p.getProperty("username");password=p.getProperty("password");//Connectionconnection=DriverManager.getConnection(url,username,password);returnconnection;}catch(SQLExceptione){thrownewRuntimeException(e);}}//釋放連接:/**定義?個(gè)?法:釋放資源:直接將rsstmtconn全部釋放:*/publicstaticvoidrelease(ResultSetrs,Statementstmt,Connectionconn){if(rs!=null){try{rs.close();}catch(SQLExceptione){e.printStackTrace();}rs=null;
}if(stmt!=null){try{stmt.close();}catch(SQLExceptione){e.printStackTrace();}stmt=null;}if(conn!=null){try{conn.close();}catch(SQLExceptione){e.printStackTrace();}conn=null;}}/*publicstaticvoidmain(String[]args){Connectionconnection=getConnection();System.out.println(connection);}*/}使?上?的?具類完成增加改查操作:packagecom.yidongxueyuan.dao2;importjava.sql.Connection;importjava.sql.Statement;importjava.util.Date;importorg.junit.Test;importcom.yidongxueyuan.dao.JdbcUtil;publicclassStudentCRUD{//insert插?:@TestpublicvoidinsertStudent()throwsException{
Connectionconn=JdbcUtil.getConnection();Statementstmt=conn.createStatement();intnum=stmt.executeUpdate("insertintostudent(sname,birthday)"+"values('xxx','"+newjava.sql.Date(System.currentTimeMillis())+"')");if(num>0){System.out.println("插?成功");}else{System.out.println("插?失敗");}JdbcUtil.release(null,stmt,conn);}//刪除:@TestpublicvoiddeleteStudent()throwsException{Connectionconn=JdbcUtil.getConnection
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 東渡中路施工方案(3篇)
- 飛機(jī)安全員培訓(xùn)課件教學(xué)
- 群落的結(jié)構(gòu)課件2025-2026學(xué)年高二上學(xué)期生物人教版選擇性必修2
- 2026廣東廣州國家實(shí)驗(yàn)室中國數(shù)字肺項(xiàng)目工程技術(shù)中心招聘2人參考考試題庫及答案解析
- 2026江西萍鄉(xiāng)建工集團(tuán)有限公司直屬工程分公司(萍鄉(xiāng)城投建工集團(tuán)有限公司)招聘10人備考考試試題及答案解析
- 2026湖北武漢大學(xué)非事業(yè)編制人員招聘71人備考考試題庫及答案解析
- 2026年合肥師范學(xué)院引進(jìn)高層次人才79名筆試模擬試題及答案解析
- 2026上半年黑龍江省農(nóng)業(yè)農(nóng)村廳事業(yè)單位招聘19人參考考試題庫及答案解析
- 2026年寧德市消防救援支隊(duì)政府專職消防隊(duì)員招聘65人考試參考題庫及答案解析
- 2026云南昆明市官渡區(qū)北京八十學(xué)校招聘2人參考考試題庫及答案解析
- 船舶設(shè)備安裝中的技術(shù)難點(diǎn)及應(yīng)對(duì)措施
- 福建省漳州市2023-2024學(xué)年高二上學(xué)期1月期末考試物理試題(解析版)
- 建筑制造施工圖設(shè)計(jì)合同模板
- 浙江省工貿(mào)企業(yè)電氣隱患排查技術(shù)服務(wù)規(guī)范
- 股骨粗隆骨折并發(fā)癥
- 購房委托書范文
- 公司外來參觀人員安全須知培訓(xùn)課件
- 農(nóng)村集貿(mào)市場改造項(xiàng)目實(shí)施方案
- 印刷操作指導(dǎo)書
- 2022版《數(shù)學(xué)新課標(biāo)》詳解ppt
- 廣州自來水公司招聘試題
評(píng)論
0/150
提交評(píng)論