資源描述:
《JavaT2JDBC訪問數(shù)據(jù)庫》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、JDBC訪問數(shù)據(jù)庫教學(xué)目標(biāo)掌握ResultSet對象。掌握PreparedStatement對象。掌握CallableStatement對象。教學(xué)任務(wù)通過實(shí)現(xiàn)查詢分析器例子近而掌握ResultSet,PreparedStatement,CallableStatement相關(guān)實(shí)踐知識1在NetBeans中新建項(xiàng)目QueryImplement新建包queryimplement在項(xiàng)目中添加Msbase.jar、Msutil.jar、Mssqlserver.jar三個(gè).jar包相關(guān)實(shí)踐知識2創(chuàng)建存儲過程CREATEPROCEDUREFINDALLA
2、SSELECT*FROMauthorsGOCREATEPROCEDUREQUERRYNAME@LNAMEvarchar(50)OUTPUT,@FNAMEvarchar(50)OUTPUT,@AUIDvarchar(20)ASSELECT@LNAME=au_lname,@FNAME=au_fnameFROMauthorsWHEREau_id=@AUIDGO相關(guān)實(shí)踐知識3新建類Author,用來存儲作者信息publicclassAuthor{//屬性//屬性的get/set方法publicStringtoString(){returnnewSt
3、ring("作者ID:"+au_id+"作者姓"+au_lname+"作者名"+au_fname+"電話"+phone+"地址"+address+"城市"+city+"狀態(tài)"+state+"郵編"+zip+"合同"+contract);}}相關(guān)實(shí)踐知識4新建類DBManage,用來執(zhí)行數(shù)據(jù)庫的操作……publicPreparedStatementgetPrepstmt(Stringsql){try{prepstmt=con.prepareStatement(sql);}catch(SQLExceptionex){ex.pri
4、ntStackTrace();}returnprepstmt;}相關(guān)實(shí)踐知識5DBManage中的方法publicCallableStatementgetCalpstmt(Stringsql){try{calpstmt=con.prepareCall(sql);}catch(SQLExceptionex){ex.printStackTrace();}returncalpstmt;}相關(guān)實(shí)踐知識6新建類HandleAuthor,用來處理具體業(yè)務(wù)publicclassHandleAuthor{......publicVectorfindAll(
5、){ResultSetrs=null;try{rs=cs.executeQuery();while(rs.next()){Authorau=newAuthor();au.setAu_id(rs.getString("au_id"));……相關(guān)實(shí)踐知識7新建類Testpackagequeryimplement;importjava.util.*;publicclassTest{publicstaticvoidmain(Stringargs[]){/*測試查找所有作者/*按作者編號查找作者姓名}}相關(guān)實(shí)踐知識8總結(jié)ResultSet對象的使用。
6、PreparedStatement對象的使用。CallableStatement對象的使用。SQLException類的使用ResultSet對象ResultSet對象表示執(zhí)行SQL查詢的結(jié)果,以包含SQL查詢產(chǎn)生表的對象的形式返回。ResultSet對象具有指向其當(dāng)前數(shù)據(jù)行的光標(biāo)(cursor),可以用它來指向結(jié)果集中的某一行。初始時(shí),光標(biāo)指向于第一行之前。ResultSet對象的next()方法將光標(biāo)移動(dòng)到下一行。同時(shí)可以通過調(diào)用ResultSet對象的first或last方法將光標(biāo)設(shè)置在結(jié)果集的第一行或最后一行。也可以調(diào)用before
7、First或afterLast方法將光標(biāo)設(shè)置在結(jié)果集的第一行前面或最后一行后面。ResultSet常用方法booleanfirst()booleanlast()intgetRow()booleanprevious()intgetType()voidbeforeFirst()voidafterLast()booleanisFirst()booleanisLast()StringgetString(intcolumnIndex)booleangetBoolean(intcolumnIndex)intgetInt(intcolumnIndex)T
8、imegetTime(intcolumnIndex)DategetDate(intcolumnIndex)booleanabsolute(introw)PreparedState