我们都知道,数据库的分页查询在实际项目中广泛应用,而且能够实现分页查询的插件有很多(像Mybatis自带的PageHelper),最近在项目中自定义了一个分页功能,在不适用插件的情况下也很方便。
MySql数据库实现分页的核心是:limit函数:
LIMIT子句可以用来限制由SELECT语句返回过来的数据数量,它有一个或两个参数,如果给出两个参数, 第一个参数指定返回的第一行在所有数据中的位置,从0开始(注意不是1),第二个参数指定最多返回行数。例如:
select * from table WHERE … LIMIT 10; #返回前10行
select * from table WHERE … LIMIT 0,10; #返回前10行
select * from table WHERE … LIMIT 10,20; #返回第10-20行数据
结合我自己的实践,总结如下:
1、定义分页实体类:(我使用了lombok插件,不用写get/set方法):
/**
* @author wangjie
* @version 2018/11/10
* 分页实体类
*/
@Data
public class PageVO {
//当前页码,默认第一页
private Integer currentPageNo=1;
//总页数
private Integer totalCount;
//页面容量
private Integer pageSize=5;
//上一页
private Integer upPageNo;
//下一页
private Integer nextPageNo;
//要前往