经常我们在操作数据库的时候都会用到分页,而且很多框架也提供了分页功能,像PageHelper.

但是在有些项目中,需要将数据查询出来进行手动分页,那么原理是什么呢?

其实很简单,首先需要知道数据总量,如果不知道数据总量,那么就要指定数据总量:totalCount

然后每页查询多少条数据,需要指定.我们默认pageSize=100

然后就进行分页了,下面是分页的代码

        // 分页
short pageSize = 100;
int pageNum = totalCount / pageSize;
int surplus = totalCount % pageSize;//是不是整除
if (surplus > 0) {
pageNum = pageNum + 1;
}
for(int i = 0; i < pageNum; i++){
int pageBegin = i * pageSize;
//传入pageBegin,pageSize进行业务逻辑处理
}

上面是将所有数据进行分页处理.然后通过jdbc操作数据库,查询出业务数据.

java手动分页处理的更多相关文章

  1. 对一个结果集(List)进行手动分页

    对一个链表List,进行手动分页,核心代码就是pagin函数: import lombok.extern.slf4j.Slf4j; import org.junit.Before; import or ...

  2. Laravel 手动分页实现

    Laravel 手动分页实现 基于5.2版本 在开发过程中有这么一种情况,你请求Java api获取信息,由于信息较多,需要分页显示.Laravel官方提供了一个简单的方式paginate($perP ...

  3. Java 动态分页类

     动态分页类: Cls_page.java package pagination; public class Cls_page { private int nums;// 总条目数 private i ...

  4. 关于laravel 得手动分页问题

    一般得分页,我们只需要使用paginate方法,就可以简单得搞定.但是遇到数组得组合情况呢?这个时候,就需要我们使用自定义分页了.首先我们看下laravel得分页方法源码: #vendor/larav ...

  5. laravel带条件查询手动分页

    后台php代码: //手动分页 $users = $kaoqin; //打算输出的数组,二维 $perPage = 10; if ($request->has('page')) { $curre ...

  6. laravel二维数组手动分页显示

    示例:数组 $user 如下 $user: array (size=) 'sort' => array (size=) => float 0.028616622341171 => f ...

  7. 纯js手动分页

    昨天让做个页面,后台提供所有数据,没有做好分页,需要前端js手动分页. 我参考了 http://www.cnblogs.com/jiechn/p/4095029.html 做了些许改动让分页效果更加完 ...

  8. 【java】分页查询实体类

    package com.dmsd.itoo.tool.pageModel; import java.io.Serializable; import java.util.HashMap; import ...

  9. Java实现分页数据获取CachedRowSet

    步骤 1.加载驱动 2.连接数据库 3.创建ResultSet 4.创建CacheRowSet 5.设置并获取分页数据 6.执行查询,展示数据 package ch13; import javax.s ...

随机推荐

  1. 第一份PHP程序

    <?php list($ncase) = fscanf(STDIN,"%d"); $mod = 1000000007; for($n=0;$n<$ncase;++$n) ...

  2. delphi 事件记录

    delphi常用事件 序号 事件 描述 1. OnActive 焦点称到窗体或控件时发生 2. OnClick 鼠标单击事件 3. OnDbClick 鼠标双击事件 4. OnClose和OnClos ...

  3. FFMPEG推流到RTMP服务器命令 - weixin_37897683的博客 - CSDN博客 https://blog.csdn.net/weixin_37897683/article/details/81225228

    FFMPEG推流到RTMP服务器命令 - weixin_37897683的博客 - CSDN博客 https://blog.csdn.net/weixin_37897683/article/detai ...

  4. Squid 缓存代理服务器的完整配置

    Squid 缓存代理服务器 Squid 的作用 1.通过缓存的方式为用户提供web访问加速 2.对用户的web访问进行过滤控制 缓存代理服务器又分为普通代理服务器,透明代理服务器,和反向代理服务器. ...

  5. Django HttpRequest对象详解

    WSGIRequest对象 Django在接收到http请求之后,会根据http请求携带的参数以及报文信息创建一个WSGIRequest对象,并且作为视图函数第一个参数传给视图函数.也就是我们经常看到 ...

  6. 我的Android进阶之旅------>Java字符串格式化方法String.format()格式化float型时小数点变成逗号问题

    今天接到一个波兰的客户说有个APP在英文状态下一切运行正常,但是当系统语言切换到波兰语言的时候,程序奔溃了.好吧,又是我来维护. 好吧,先把系统语言切换到波兰语,切换到波兰语的方法查看文章 我的And ...

  7. Linux学习笔记(3)linux服务管理与启停

    一.LINUX 系统服务管理 1.RHEL/OEL 6.X及之前 service命令用于对系统服务进行管理,比如启动(start).停止(stop).重启(restart).查看状态(status)等 ...

  8. 删除pentaho用户和用户文件夹

    获取所有用户 http://xxxxxxxx.com:8888/pentaho/api/repo/files/home/children 获取单个用户 http://whfxpt.itestcn.co ...

  9. django安装与卸载

    安装 D:\Django-1.8.2>python setup.py installrunning install Installed d:\python27\lib\site-packages ...

  10. ReportView显示本地报表

    from:http://www.cnblogs.com/duanshuiliu/archive/2012/07/13/2589862.html 使用ReportView控件可以显示远端Report s ...