首页 | 互联网 | IT动态 | Cisco | Windows | Linux | Java | .Net | Oracle | 华为 | 存储世界 | 服务器 | 网络设备 | IDC | 安全 | 求职招聘
IT培训 | 数字网校 | 技术专题 | 电子书下载 | 教学视频 | 网页设计 | 平面设计 | 解决方案 | 直播室 | 虚拟考场 | 搜索 | 博客 | 沙龙 | 论坛
中国IT实验室Linux频道
中国IT教育
 
首页 资讯动态 认证考试 新手入门 核心技术 高级技术 J2EE J2ME Java&XML 开源技术 其他技术 RSS订阅 论坛 专题
您现在的位置: 中国IT实验室 >> Java >> J2EE >> Servlet/Jsp >> 文章正文

网络编程:简单共同分页

文章来源JavaResearch 作者wcy19782… 更新时间2007-1-23 保存本文保存本文 推荐给好友推荐给好友 收藏本页收藏本页
    编程经常遇到分页问题做个通用的简单分页的类:想法是通过数据库里查出的总行数得到总的页数,然后通过把当前页作为参数传进方法得到数据开始的位置和结束位置。这样就可以通过语句得到想要的数据同过集合显示到网页里就可以了。

/*功能描述:
 * 实现分页功能
 * 
 *  主要属性:
 *          当前页、总页数、总行数、一页显示的行数;分别为
 *    pange , allpage, cont, pagerow
 *  主要方法: 
 *       setCont方法:设置总行数并得到总页数
 *       getAllpate方法:返回总页数
 *       getFirstpage方法:返回第一页
 *       getLastpage方法:最后一页
 *       getUppage方法:向前翻页
 *       getDownpage方法:向后翻页
 *       
 *    使用方法:
 *     1:调用  setCont方法:设置总行数并得到总页数
 *      2: 调用setPagerows(int pagerows)//设置一页显示的行数也可以不用(默认5行)
 *     3: 调用  getAllpate方法:返回总页数
 *      4:如果要返回第一页或最后页调用:getFirstpage()或getLastpage()
 *       调用 getStrdata() 获得数据开始位置; 调用 getEnddata() 获得数据结束位置
 *      5:如果向前翻页调用:getUppage(int page)page代表传过来的当前页的页码然后在调用
 *        调用 getStrdata() 获得数据开始位置; 调用 getEnddata() 获得数据结束位置
 *      6:如果向后翻页调用:getUppage(int page)page代表传过来的当前页的页码然后在调用
 *       调用 getStrdata() 获得数据开始位置; 调用 getEnddata() 获得数据结束位置
 * */
package whw.function;


public class Pageupdown
{
 int pange;//当前页
 int allpage;//总页数
 int cont;//总行数
 int pagerows=5;//一页要显示的行数;5
 int strdata;//开始数据
 int enddata;//结束数据
 //**************************************************
 public void setCont(int cont)//设置总行数并得到总页数
 {
  this.cont = cont;
  
  if(cont>0 && pagerows>0)
  {
   int temp=cont/pagerows;
   int temp2=cont%pagerows;
   if(temp2>0)
   {
    temp++;
   }
   allpage=temp;
  }
 }
 
 //***************************************************
 public int getAllpage()//返回总页数
 {
  
  return allpage;
  
 }
 
 //******************************************************
 public  void getFirstpage()//第一页
 {
  strdata=1;//开始位置
  enddata=pagerows;//结束位置
  
 }
 //*******************************************************
 public void getLastpage()//最后一页
 {
  
  strdata=(allpage-1)*pagerows+1;//开始位置
  enddata=cont;//结束位置
 }
 //*********************************************************
 public void getUppage(int page)//向前翻页
 {
  if(page<=1)
  {
   page=1;
  }
  else
  {
   page--;
  }
  strdata=(page-1)*pagerows+1;//开始位置
  enddata=pagerows*page;//结束位置
  
 }
 //*********************************************************
 public void getDownpage(int page)//向后翻页
 {
  if(page>=allpage)
  {
   page=allpage;
  }
  else
  {
   page++;
  }
  strdata=(page-1)*pagerows+1;//开始位置
  enddata=pagerows*page;//结束位置
  if(enddata>cont)
  {
   enddata=cont;
  }
 }

 public int getEnddata()
 {
  return enddata;
 }

 public int getStrdata()
 {
  return strdata;
 }

 //***************************************************
 public void setPagerows(int pagerows)//设置一页显示的行数
 {
  this.pagerows = pagerows;
 }

 }
【责编:Peng】

中国IT教育

相关产品和培训
文章评论
 友情推荐链接
 认证培训
 专题推荐

 ·超前体验 Oracle 11g的5个新特性
 ·揭密使用VB.NET的五个实用技巧
 ·Oracle和SQL Server常用函数对比专题
 ·展现C#世界 C#程序设计专题
 ·Java入门 Tomcat的配置技巧精华专题
 ·Oracle RMAN物理备份技术详解
 ·JAVA开发利器——JBuilder知多少
 ·Hello,web2.0技术进阶专题
 ·从入门到精通 java初学者实践系列教程
 ·JAVA 与 .NET两强对垒 到底该选什么?
 今日更新
 社区讨论
 博客论点
 频道精选
 Java 频道导航