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

  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. Civil3D二次开发常见问题总结

    Civil3D二次开发常见问题总结 AutoCAD命令提示"未知命令**--"的原因:在Initialize方法内报出异常就会导致这种情况.O__O"-(或是少加了dll ...

  2. 【hiho一下 第八周】状态压缩·一

    [题目链接]:http://hihocoder.com/problemset/problem/1044 [题意] [题解] 设f[i][j]表示; 前i-1个位置已经决策完; 然后i-m+1..i这一 ...

  3. hdu 2491 贪心

    #include<stdio.h> #include<stdlib.h> #define N 110000 struct node { int u,v,len,time; }m ...

  4. css 超出宽度出现省略号

    display: block; overflow: hidden; width: 260px; white-space: nowrap; text-overflow: ellipsis;

  5. structs中通过LabelValueBean构建下拉列表

    Action类中增加列表 List<LabelValueBean> list = new ArrayList<LabelValueBean>(); list.add(new L ...

  6. OpenFace Docker 使用简介

    在Docker中使用openface最大的问题是数据与主机的交互,下面我介绍几种方法来实现主机与Docker容器的数据交互. 1.第一种也是最方便的一种方法是在进入容器时使用-v参数将主机的目录挂载到 ...

  7. SSM框架——具体整合教程(Spring+SpringMVC+MyBatis)

    使用SSM(Spring.SpringMVC和Mybatis)已经有三个多月了.项目在技术上已经没有什么难点了,基于现有的技术就能够实现想要的功能.当然肯定有非常多能够改进的地方.之前没有记录SSM整 ...

  8. 线程基础:JDK1.5+(8)——线程新特性(上)

    1.概要 假设您阅读JAVA的源码.出现最多的代码作者包含:Doug Lea.Mark Reinhold.Josh Bloch.Arthur van Hoff.Neal Gafter.Pavani D ...

  9. Android——隐藏输入法的小技巧

    今天偶然在百度地图提供的DEMO里看到这样一段代码.认为确实是个小技巧,就写下来分享一下. 针对的问题: 我们在开发android界面的时候,常常使用EditText控件.然后每次进入这个页面的时候, ...

  10. js 数组克隆

    在JS中,对于对象类型的变量的引用是通过类似C之类的"指针"的方式来操作的,及假设多个变量引用同一个对象,则随意一个变量对对象的操作都会影响到其他的变量. 这个可能不是非常明确,以 ...