import java.util.Collection;
import java.util.Iterator;
import com.soohuo.se.member.ds.usercomment.AppUserCommentVO;
import com.soohuo.se.common.ShowGrade;
import com.soohuo.framework.GenericException;
import java.util.ArrayList;
/*
*@param count 記錄的總共條數
*@param url 翻頁要跳轉的頁面url
*@param infoSum 每頁顯示的條數
*@param page 當前頁
*@param arr 存放結果集的ArrayList
*@return 產生的結果
*@throws GenericException
*針對oracle資料庫,採用sql陳述式完成分頁
*sql語句格式為:
*select * from (select rownum num,列 from 表 where ...and...orderby....)where num between 開始(從1開始) and 結束
*/
public class Pagination {
//設定常用參數
public void setParam(int count,String url,int infoSum,int page)
{
if(page==0||page
{
page = 1;
}
this.page=page;
this.url=url+"&page=";
this.infoSum=infoSum;
this.count=count;
}
public static int infoSum=3;//每頁顯示的條數
public static int count=0; //總共的條數
public static String url; //跳轉地址
public static int page; //當前頁
//設定總共頁數
public void setInfoSum(int infoSum)
{
this.infoSum=infoSum;
}
//取得總共條數
public int getCount()
{
return count;
}
//取得每頁顯示數
public int getInfoSum()
{
return infoSum;
}
//取得總共的頁數
public int getSumPage()
{
int pageSum=count/infoSum;
if(count%infoSum!=0)
pageSum+=1;
return pageSum;
}
//設定跳轉用的js
public String setJs()
{
String js="";
return js;
}
//設定翻頁主體
public String getPageBody(ArrayList arr) throws
GenericException {
String str="";
Iterator it=arr.iterator();
ShowGrade showGrade=new ShowGrade();
while(it.hasNext())
{
AppUserCommentVO vo=(AppUserCommentVO)it.next();
str+=showGrade.ShowUserCommentGrade(vo.getCommentId())+"";
str+="
";
str+="src='/images/ping.gif'> 發 表 人:["+vo.getUserId()+"]
";
//str+="src='/images/ping.gif'> 發 表 人:["+vo.getUserName()+"]
";
str+="
";
str+="
";
str+="點評:
"+vo.getCommentInfo()+"
";
str+="
";
}
this.page=0;
return str;
}
//設定翻頁頭
public String getPageHead()
{
int pageSum=this.getSumPage();
String head=this.setJs()+"
共有"+pageSum+"頁 當前是"+page+"頁";
if(pageSum>1 && page
{
head+=" 跳到第
"; for(int i=1;i { if(i==page){ head+=""+i+""; } else{ head+=""+i+""; } } head+="
";
}
head+="
";
return head;
}
//設定翻頁尾顯示
public String getPageFoot(int pa)
{
int pageSum=this.getSumPage();
int p=pa;
int nextPage=0;//下頁
nextPage=p+1;
int upPage=0;
upPage=p-1;//上頁
String foot="
";
if(p>1)
{
foot+="首頁  上一頁";
}
if(pageSum>1 && p {
foot+=" 下一頁 尾頁";
}
foot+="
";
return foot;
}
}