4.OpUpdate()方法
本系統(tǒng)的信息發(fā)布、信息審核、信息刪除和付費(fèi)設(shè)置業(yè)務(wù)具有相同的性質(zhì),即都是根據(jù)指定的SQL語(yǔ)句來(lái)更新數(shù)據(jù)庫(kù)。OpUpdate()方法用來(lái)實(shí)現(xiàn)具有該性質(zhì)的業(yè)務(wù),方法中首先調(diào)用DB類的doPstm()方法更新數(shù)據(jù)庫(kù),接著調(diào)用getCount()方法獲取更新操作所影響的記錄數(shù),最后返回該記錄數(shù)。OpUpdate()方法的關(guān)鍵代碼如下:
例程11 代碼位置:光盤(pán)\TM\01\src\com\yxq\dao\OpDB.java
public int OpUpdate (String sql,Object[] params){
int i=-1;
mydb.doPstm(sql, params); //調(diào)用DB類的doPstm()方法更新數(shù)據(jù)庫(kù)
i=mydb.getCount(); //獲取更新操作所影響的記錄數(shù)
return i;
}
5.LogOn()方法
LogOn()方法用來(lái)實(shí)現(xiàn)管理員登錄操作的身份驗(yàn)證業(yè)務(wù),該方法通過(guò)查詢數(shù)據(jù)庫(kù)來(lái)判斷請(qǐng)求登錄的用戶是否存在,若存在則返回true,否則返回false。LogOn()方法的關(guān)鍵代碼如下:
例程12 代碼位置:光盤(pán)\TM\01\src\com\yxq\dao\OpDB.java
public boolean LogOn(String sql,Object[] params){
mydb.doPstm(sql, params); //查詢數(shù)據(jù)庫(kù)
ResultSet rs=mydb.getRs(); //獲取結(jié)果集
boolean mark=(rs==null||!rs.next()?false:true); //判斷用戶是否存在,不存在返回false,存在返回true
return mark;
}
6.OpCreatePage()方法
OpCreatePage()方法用來(lái)設(shè)置分頁(yè)信息,這些信息包括總記錄數(shù)、總頁(yè)數(shù)、當(dāng)前頁(yè)、分頁(yè)狀態(tài)和分頁(yè)導(dǎo)航鏈接等。該方法存在多個(gè)參數(shù),這些參數(shù)及說(shuō)明如表1.10所示。
OpCreatePage()方法主要就是將分頁(yè)信息封裝到CreatePage類對(duì)象中,然后返回該CreatePage對(duì)象。在CreatePage類中定義了存儲(chǔ)分頁(yè)信息的屬性,并且創(chuàng)建了對(duì)應(yīng)的setXXX()與getXXX()方法來(lái)存取這些屬性。CreatePage類的介紹可查看1.5.3節(jié)。OpCreatePage()方法的關(guān)鍵代碼如下:
例程13 代碼位置:光盤(pán)\TM\01\src\com\yxq\dao\OpDB.java
public CreatePage OpCreatePage(String sqlall,Object[] params,int perR,String strCurrentP,String gowhich){
CreatePage page=new CreatePage(); //創(chuàng)建一個(gè)CreatePage類對(duì)象
page.setPerR(perR); //設(shè)置每頁(yè)顯示記錄數(shù)
if(sqlall!=null&&!sqlall.equals("")){
DB mydb=new DB();
mydb.doPstm(sqlall,params); //查詢數(shù)據(jù)庫(kù)
ResultSet rs=mydb.getRs(); //獲取結(jié)果集
if(rs!=null&&rs.next()){
rs.last(); //將指針移動(dòng)到結(jié)果集的最后一行
page.setAllR(rs.getRow()); //調(diào)用getRow()方法獲取當(dāng)前記錄行數(shù)(總記錄數(shù)),然后設(shè)
置總記錄數(shù)
page.setAllP(); //設(shè)置總頁(yè)數(shù)
page.setCurrentP(strCurrentP); //設(shè)置當(dāng)前頁(yè)
page.setPageInfo(); //設(shè)置分頁(yè)狀態(tài)信息
page.setPageLink(gowhich); //設(shè)置分頁(yè)導(dǎo)航鏈接
rs.close(); //關(guān)閉結(jié)果集
}
}
return page;
}