📄 splitpage.java
字号:
package cn.com.iaspec.workflow.data;
/**
* <p>Title:待办任务分页控制类 </p>
*
* <p>Description: 深圳市劳动仲裁信息管理系统</p>
*
* <p>Copyright: Copyright (c) 2005</p>
*
* <p>Company: 永泰软件工程有限公司</p>
*
* @author syj
* @version 1.0
*/
import java.util.*;
public class SplitPage{
private PageInfo pageInfo=null;
private ArrayList pagelist=null;
/**
* 取得数据集合的长度
* @return int
*/
public long getPagelistSize(){
pagelist.trimToSize();
return pagelist.size();
}
/**
*
* @return PageInfo
*/
public PageInfo getPageInfo(){
if(pageInfo==null){
pageInfo=new PageInfo();
}
return pageInfo;
}
/**
*
* @param pageInfo PageInfo
*/
public void setPageInfo(PageInfo pageInfo,ArrayList pagelist){
this.pageInfo=pageInfo;
this.pagelist=pagelist;
}
public SplitPage(){}
/**
*
* @param pageInfo PageInfo
*/
public SplitPage(PageInfo pageInfo){
this.pageInfo=pageInfo;
}
/**
*
* @return ArrayList
*/
public ArrayList getPagelist(){
return pagelist;
}
/**
*
* @param pagelist ArrayList
*/
public void setPagelist(ArrayList pagelist){
this.pagelist=pagelist;
}
/**
* 取得符合条件的总记录数
* @return long
*/
public long getLongRowTotal(){
return getPagelistSize();
}
/**
* 取得符合条件的总页数
* @return long
*/
public long getLongPageTotal(){
return((getPagelistSize()+pageInfo.getLongRowsPerPage())-
1)/pageInfo.getLongRowsPerPage();
}
/**
* 取得结束记录数
* @return long
*/
public long getLongRowEnd(){
long RowEnd=getLongRowBegin()+pageInfo.getLongRowsPerPage()-1;
if(RowEnd>getLongRowTotal()){
return getLongRowTotal();
}
return RowEnd;
}
/**
* 取得开始记录数
* @return long
*/
public long getLongRowBegin(){
long RowBegin=(pageInfo.getLongCurPage()-1)*pageInfo.getLongRowsPerPage()+1;
if(RowBegin>getLongRowTotal()){
return getLongRowTotal();
}
return RowBegin;
}
/**
* 返回翻页方式的参数值
* @return long
*/
public int getCheckpageinfo(){
return pageInfo.getCheckpageinfo();
}
/**
* 取得当前页数
* @return long
*/
public long getLongCurPage(){
return pageInfo.getLongCurPage();
}
/**
* 判断欲转到页是否等于当前页,如果不等就把欲转到页赋值给当前页(还要判断当前页面是上一页还是下意义页)
*/
public void setlongCurPage(){
if(pageInfo.getLongCurPage()!=pageInfo.getLongGotoPage()&
pageInfo.getLongGotoPage()>0){
pageInfo.setLongCurPage(pageInfo.getLongGotoPage());
}
}
/**
*
* @return long
*/
public int returnCount(){
return(int)((pageInfo.getLongCurPage()-1)*pageInfo.getLongRowsPerPage()+1);
}
/**
*返回分页对象
* @return PageInfo
*/
public PageInfo getPageInfoTool(){
ArrayList list=new ArrayList();
PageInfo _pageinfo=new PageInfo();
setlongCurPage(); //设置当前页
try{
if(!(returnCount()>getPagelistSize())){
for(long i=getLongRowBegin()-1;i<pagelist.size();i++){
if(i<getLongRowEnd()){
list.add(pagelist.get((int)i));
}
}
}
_pageinfo.setLongCurPage(getLongCurPage());
//_pageinfo.setLongGotoPage(getLongCurPage());
_pageinfo.setLongPageTotal(getLongPageTotal());
_pageinfo.setLongRowBegin(getLongRowBegin());
_pageinfo.setLongRowEnd(getLongRowEnd());
_pageinfo.setLongRowTotal(getLongRowTotal());
_pageinfo.setCheckpageinfo(getCheckpageinfo());
_pageinfo.setPageinfolist(list);
}
catch(Exception e){
e.printStackTrace();
}
return _pageinfo;
}
public static void main(String[] args){
SplitPage splitpage=new SplitPage();
PageInfo pageinfo=new PageInfo();
// pageinfo.setLongCurPage(3);//设置当前页
//pageinfo.setLongRowsPerPage(4);//设置每页的记录数
pageinfo.setLongGotoPage(5); //设置欲跳转页
//pageinfo.setCheckpageinfo(0);
ArrayList list=new ArrayList();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5");
list.add("6");
list.add("7");
list.add("8");
list.add("9");
list.add("10");
splitpage.setPageInfo(pageinfo,list);
PageInfo page=splitpage.getPageInfoTool();
System.out.println("当前页getLongCurPage="+page.getLongCurPage());
System.out.println("欲转到页getLongGotoPage="+page.getLongGotoPage());
System.out.println("总页数getLongPageTotal="+page.getLongPageTotal());
System.out.println("开始记录数getLongRowBegin="+page.getLongRowBegin());
System.out.println("结束记录数getLongRowEnd="+page.getLongRowEnd());
System.out.println("每页记录数getLongRowsPerPage="+page.getLongRowsPerPage());
System.out.println("总记录数getLongRowTotal="+page.getLongRowTotal());
System.out.println("翻页getCheckpageinfo="+page.getCheckpageinfo());
System.out.println(page.getPageinfolist().toString());
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -