分页是java web 开发中常见和非常重要的一个功能,要实现该功能,只需关注五个要素和一个公式。
四个要素
- 当前页码 index
- 每页显示条数 number
- 符合条件的数据总条数 total
- 计算出总页数 page = total/number
注意: 总页数需要向上取整Math.ceil(page)
一个公式
公式的作用在于,数据库查询时,确定偏移量的起始位置,就是这个 limit(start,number)中的start。
start=(index - 1) * number
前端需要注意的
前端需要注意关注,当前页码是否是第1页,或者最后1页。如果是,则需要禁用用户翻页按钮了。
index==1 ,是第一页了
index==page ,是最后一页了
写一个小demo:
package com.wlqmtc.utils;
public class PageUtils<T>{
private int index;
private int number;
private int total;
private int page;
private List<T> list;
/* 省略 getter和setter */
}然后,哪一个services层需要,就new PageUtils(),通过setter传参,通过getter取数据,如:pageUtils.setIndex(x)