分页查询:(pageHelper)
程序员文章站
2022-06-18 23:29:57
...
分页查询:(pageHelper)
首先配置依赖:
<!--分页依赖-->
<!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.2.0</version>
</dependency>
在controller中,在查询之前调用pageHelper,在查询语句前加上代码:
PageHelper.startPage(pn,5);
List<Emp> emps = empService.selectAllEmp();
其中:pn为传入的页面(查询第几页),而后者为每页的记录数(pageSize
然后,将查询结果进行封装
PageInfo page = new PageInfo(emps,5);
参数前者为我们查询出来数据的List集合,而后者为需要连续显示的分页(navigatePages)——即:
若数据记录(集合list中的数据)不足以显示够所传入的navigatePages的数量,则会减少显示,如上图则只显示了3页,而如果数据量够的话最多显示5页(navigatePages)
以下罗列PageInfo的常用属性:
当前页:PageNum //若想获得当前页码,则只需 page.getPageNum()即可,以下也是
总页码:Pages
总记录数:Total
当页数据信息:List //这个重要,通过 page.getPageNum()可以获得被PageHelper封装 好的分页信息——它会把原始查询出来的emps数据提取中某一页数据,保存在List属性中
当前页页码:private int pageNum
是否有前一页:private boolean hasPreviousPage
是否有后一页:private boolean hasNextPage
所有导航页码:private int[] navigatepageNums
导航页码数:private int navigatePages