假分页,顾名思义,不是真正的在数据库里进行过滤,而是从数据库查询之后,取得全部结果,在展现的时候做些手脚。

  1. import java.util.ArrayList;
  2. import java.util.List;
  3. public class Pager {
  4. /**
  5. * 当前页码
  6. */
  7. private int currentPage;
  8. /**
  9. * 总页数
  10. */
  11. private int totalPage;
  12. /**
  13. * 总行数
  14. */
  15. private int totalRows;
  16. /**
  17. * 每页显示条数
  18. */
  19. private int avgRows = 5;
  20. /**
  21. * 原集合
  22. */
  23. private List list;
  24. public Pager() {
  25. super();
  26. }
  27. public Pager(int currentPage, int avgRows, List list) {
  28. super();
  29. this.currentPage = currentPage;
  30. this.avgRows = avgRows;
  31. this.list = list;
  32. this.totalRows = list.size();
  33. this.totalPage = (this.totalRows - 1) / this.avgRows + 1;
  34. }
  35. public List getPagerList() {
  36. List newList = new ArrayList();
  37. for(int i = (currentPage - 1) * avgRows; i < totalRows && i < currentPage * avgRows; i++) {
  38. newList.add(list.get(i));
  39. }
  40. return newList;
  41. }
  42. public int getCurrentPage() {
  43. return currentPage;
  44. }
  45. public void setCurrentPage(int currentPage) {
  46. this.currentPage = currentPage;
  47. }
  48. public int getTotalPage() {
  49. return totalPage;
  50. }
  51. public void setTotalPage(int totalPage) {
  52. this.totalPage = totalPage;
  53. }
  54. public int getAvgRows() {
  55. return avgRows;
  56. }
  57. public void setAvgRows(int avgRows) {
  58. this.avgRows = avgRows;
  59. }
  60. public int getTotalRows() {
  61. return totalRows;
  62. }
  63. public void setTotalRows(int totalRows) {
  64. this.totalRows = totalRows;
  65. }
  66. public List getList() {
  67. return list;
  68. }
  69. public void setList(List list) {
  70. this.list = list;
  71. }
  72. }

这是一个简单的分页器,原理很简单,将从数据库查询的数据,传入到分页器里,返回的是分好页的集合。

这种方法不适用于大批量数据。

原文地址:http://www.cnblogs.com/ghsau/archive/2012/02/08/2768571.html

java分页之假分页的更多相关文章

  1. Jsp分页实例---假分页

    今天总结一个JSP假分页的实例,由基本功能由js实现. 相较前一篇真分页中程序的功能,丰富了一些.具备首页尾页,和页面跳转功能. 首先还是来总结一下真假分页的优缺点和特性吧. 假分页:从数据库中取出所 ...

  2. jsp 假分页的实现

    原本做毕设做了一堆表格需要读出数据.为了以后的数据可能会很多做准备,这里实现一个以基于jsp页面实现的假分页. 假分页:实际上数据库一次过把所有数据读出来,通过对输出展示的控制来实现对数据分页的假象. ...

  3. 菜鸟学Java(十)——分页查询

    今天继续跟大家说说一些非常基础的东西,这次我们说说分页查询.说到分页,可能很多人都听说过什么真分页.假分页的.简单解释一下,拿第二页,每页20条为例:真分:数据库里取 的就是21-40条:假分:数据库 ...

  4. ASP.NET(四):ASP.net实现假分页显示数据

    导读:在做数据查询的时候,有的时候查询到的数据有很多.通常呢,我们一般都是去拖动右侧边的滚动条.但是,有了分页后,我们就可以不必是使用滚动条,而直接通过分页查看我们想要的数据.在分页的过程中,有分为真 ...

  5. easyUI datagrid 前端假分页

    datagrid有两种分页方式,真分页和假分页. 所谓真分页,就是真的每次只获取一张分页的数据. 所谓假分页,就是将所有数据全部获取下来,然后利用其分页控件进行分页. 下面具体说说假分页: 1.dat ...

  6. Jsp分页实例---真分页

    网页的分页功能的实现比较简单,实现方法也多种多样. 今天总结一个简单的Jsp真分页实例. 首先,提到分页就要先明确一个概念,何为真分页何谓假分页. 假分页:一次性从数据库读出表的所有数据一次性的返回给 ...

  7. pagebean pagetag java 后台代码实现分页 demo 前台标签分页 后台java分页

    java 后台代码实现分页 demo 实力 自己写的 标签分页 package com.cszoc.sockstore.util; import java.util.HashMap;import ja ...

  8. 基于jquery 的分页插件,前端实现假分页效果

    上次分享了一款jquery插件,现在依旧分享这个插件,不过上一次分享主要是用于regular框件,且每一页数据都是从后端获取过来的,这一次的分享主要是讲一次性获取完数据 然后手动进行分页.此需求基本上 ...

  9. jsp假分页

    假分页:从数据库中取出所有的数据,然后分页在界面上显示.访问一次数据库,但由于选择的数据量比较大,所以第一次花费时间比较长,但之后每一页的显示都是直接.快速的,避免对数据库的多次访问. 真分页:确定要 ...

随机推荐

  1. Java基础学习总结(65)——Java中的String,StringBuilder和StringBuffer比较

    字符串,就是一系列字符的集合. Java里面提供了String,StringBuffer和StringBuilder三个类来封装字符串,其中StringBuilder类是到jdk 1.5才新增的.字符 ...

  2. Unknown tag (s:property).

    Unknown tag (s:property). 在jsp文件中加入此句话:<%@ taglib uri="/struts-tags" prefix="s&quo ...

  3. H3C SecPath U200-S 如何在内网使用外网IP地址访问内网服务器

    H3C SecPath U200-S 如何在内网使用外网IP地址访问内网服务器 ------------------------------------------------------------ ...

  4. codevs——T2102 石子归并 2

     http://codevs.cn/problem/2102/  时间限制: 10 s  空间限制: 256000 KB  题目等级 : 黄金 Gold 题解  查看运行结果     题目描述 Des ...

  5. ORACLE-游标数

    .查看系统配置游标数 select value from v$parameter where name = 'open_cursors'; .查看游标使用情况 select o.sid, osuser ...

  6. Android 四大组件学习之BroadcastReceiver四

    本节学习系统中特殊的广播接收者. 我们前面几节不是说了,当广播接受者一旦注冊到系统中,当系统发送的广播和你注冊的广播的action匹配时,系统就会启动广播接收者所在的进程.除非用户手动停止广播接收者所 ...

  7. vehicle time series data analysis

    以HADOOP为代表的云计算提供的仅仅是一个算法执行环境,为大数据的并行计算提供了在现有软硬件水平下最好的(近似)方法.并不能解决大数据应用中的全部问题.从详细应用而言,通过物联网方式接入IT圈的数据 ...

  8. 每天自己主动备份mysql脚本

    定时运行脚本: 1.运行 crontab -e 00 00 * * * /bin/bash yourpath/mysqlbak.sh 2.打开自己主动运行文件 vi /etc/crontab 在etc ...

  9. CF149D 区间dp

    http://codeforces.com/problemset/problem/149/D D. Coloring Brackets time limit per test 2 seconds me ...

  10. [Android 性能优化系列]内存之基础篇--Android怎样管理内存

    大家假设喜欢我的博客,请关注一下我的微博,请点击这里(http://weibo.com/kifile),谢谢 转载请标明出处(http://blog.csdn.net/kifile),再次感谢 原文地 ...