java的result類-java中的resultset類詳解_第1頁
java的result類-java中的resultset類詳解_第2頁
java的result類-java中的resultset類詳解_第3頁
java的result類-java中的resultset類詳解_第4頁
java的result類-java中的resultset類詳解_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

java的result類_java中的resultset類詳解?:JDBCsun:提供了?套通?性的接?:可以連接任何的數(shù)據(jù)庫:連接數(shù)據(jù)庫的具體得到實例,具體的數(shù)據(jù)庫?商實現(xiàn)的。連接數(shù)據(jù)的步驟(別忘了復(fù)制jar包):(1)注冊驅(qū)動:Class.forName():DriverManager(2)獲得鏈接對象:Connection(3)創(chuàng)建sql容器:語句:(4)執(zhí)?sql語句::stmt(5)查詢操作:遍歷結(jié)果集:ResultSet(6)關(guān)閉資源:ResultSet:詳解(更多可以看API)封裝了結(jié)果集的對象:內(nèi)部有?個可移動的光標(biāo),默認(rèn)情況,指向第?條記錄集的上?條記錄:next();光標(biāo)下移動?次:返回的boolean的值;判斷是否有結(jié)果可以被遍歷:previous();光標(biāo)上移動?次:last()移動到最后??:afterLast();移動到最后??之后:beforeFirst()移動到第??的之前: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();//上移動?次://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;/**對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ū)動:只需要注冊?次就OK**/static{try{Class.forName(driver);}catch(ClassNotFoundExceptione){e.printStackTrace();}}/**1:創(chuàng)建?具類:直接獲得?個連接對象:*/publicstaticConnectiongetConnection(){

try{Connectionconnection=DriverManager.getConnection(url,username,password);returnconnection;}catch(SQLExceptione){thrownewRuntimeException(e);}}/**定義?個?法:釋放資源:直接將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)??具類實現(xiàn)操作:packagecom.yidongxueyuan.dao;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;/**使??具類:對代碼進(jìn)?重構(gòu):*/publicclassStudentDaoImpl2{publicstaticvoidmain(String[]args){Connectionconn=null;Statementstmt=null;ResultSetrs=null;try{//使??具類獲得?個連接對象: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個???件內(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)?讀?。侯惖募虞d器: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)建?具類:直接獲得?個連接對象:*/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);}}//釋放連接:/**定義?個?法:釋放資源:直接將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等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論