?? rsfenye.java
字號:
package util;
import java.sql.ResultSet;
public class rsFenYe {
ResultSet rs=null;//要分頁處理的記錄集
int currentPage=1;//當前頁碼
int pageSize=10;//每頁的記錄條數(shù),默認為10
/**
* 得到分頁字串,并把記錄指針移動到當前頁的第一條記錄的前面位置
* 輸入?yún)?shù):返回的JSP頁面,refName數(shù)組為超鏈接中繼currentPage之后的?參數(shù)名,refValue為對應的值
* 輸出參數(shù):字符串”共2頁,當前第1頁 下一頁 末頁”
*/
public String earn_fenyi_string(String returnJSP,String[] refName,String[] refValue){
String returnString=new String("");
if(rs==null) return(returnString);
int pageCount=0;//總頁數(shù)
int rowCount=0;//rs的總記錄條數(shù)
if(pageSize<=0) //每頁記錄條數(shù)不正確
return(returnString);
try{
//------得到總記錄條數(shù)------
rs.last();
rowCount=rs.getRow();
rs.beforeFirst();
//------記錄指針定位--------
int RecordPosition=(currentPage-1)*pageSize;
if(RecordPosition==0) rs.beforeFirst();
else rs.absolute(RecordPosition);
}catch(Exception e){
System.out.println(e);
return(returnString);
}
//---------得到總頁數(shù)----------
if(rowCount%pageSize==0) pageCount=rowCount/pageSize;
else pageCount=rowCount/pageSize+1;
//---------得到返回字符串--------
returnString="共"+pageCount+"頁,當前第"+currentPage+"頁 ";
if(currentPage!=1&&pageCount!=0){//不是首頁且總頁數(shù)不為0
returnString=returnString+"<a href='"+returnJSP+"?currentPage=1";
for(int i=0;i<refName.length;i++)
returnString=returnString+"&"+refName[i]+"="+refValue[i];
returnString=returnString+"'>首頁</a> ";
returnString=returnString+"<a href='"+returnJSP+"?currentPage="+(currentPage-1);
for(int i=0;i<refName.length;i++)
returnString=returnString+"&"+refName[i]+"="+refValue[i];
returnString=returnString+"'>上一頁</a> ";
}
if(currentPage!=pageCount&&pageCount!=0){//不是末頁且總頁數(shù)不為0
returnString=returnString+"<a href='"+returnJSP+"?currentPage="+(currentPage+1);
for(int i=0;i<refName.length;i++)
returnString=returnString+"&"+refName[i]+"="+refValue[i];
returnString=returnString+"'>下一頁</a> ";
returnString=returnString+"<a href='"+returnJSP+"?currentPage="+pageCount;
for(int i=0;i<refName.length;i++)
returnString=returnString+"&"+refName[i]+"="+refValue[i];
returnString=returnString+"'>末頁</a> ";
}
return returnString;
}
public ResultSet getRs() {
return rs;
}
public void setRs(ResultSet rs) {
this.rs = rs;
}
public int getCurrentPage() {
return currentPage;
}
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -