pageHelper分页技术
发布日期:2025-05-01 13:34:17 浏览次数:1 分类:技术文章

本文共 2845 字,大约阅读时间需要 9 分钟。

十二,pageHelper分页技术

1.分页简介

PageHelper 是 MyBatis 中非常方便的第三方分页插件。

2) 官方文档:

文档说明:

2.涉及的名词解释

//当前页private int pageNum;//每页的数量private int pageSize;//当前页的数量private int size;//由于startRow和endRow不常用,这里说个具体的用法//可以在页面中"显示startRow到endRow 共size条数据"//当前页面第一个元素在数据库中的行号private int startRow;//当前页面最后一个元素在数据库中的行号private int endRow;//总记录数private long total;//总页数private int pages;//结果集private List
list;//前一页private int prePage;//下一页private int nextPage;//是否为第一页private boolean isFirstPage = false;//是否为最后一页private boolean isLastPage = false;//是否有前一页private boolean hasPreviousPage = false;//是否有下一页private boolean hasNextPage = false;//导航页码数private int navigatePages;//所有导航页号private int[] navigatepageNums;//导航条上的第一页private int navigateFirstPage;//导航条上的最后一页private int navigateLastPage;

3.使用步骤

1)导入依赖

2)配置分页插件;如果是myBatis使用则在全局配置文件中配置分页插件。如果是ssm整合使用则在spring-mvc中配置分页插件。

3)使用 PageHelper 提供的方法进行分页。

4)可以使用更强大的 PageInfo 封装返回结果。

4.具体使用

案例需求:订单分页查询

1.在父工程pom文件导入依赖

com.github.pagehelper
pagehelper
5.1.2

2.配置分页插件

1)mybatis全局配置文件

2)spring-mvc配置文件

params=value1

3.控制层代码

/** * 导入jackson包。 * 实现查询员工数据 * @param pn * @return */@RequestMapping("/emps")@ResponseBodypublic Msg getEmpsWithJson(  @RequestParam(value = "pn", defaultValue = "1") Integer pn) {
// 这不是一个分页查询 // 引入PageHelper分页插件 // 在查询之前只需要调用,传入页码,以及每页的大小 PageHelper.startPage(pn, 5); // startPage后面紧跟的这个查询就是一个分页查询 List
emps = employeeService.getAll(); // 使用pageInfo包装查询后的结果,只需要将pageInfo交给页面就行了。 // 封装了详细的分页信息,包括有我们查询出来的数据,传入连续显示的页数 PageInfo page = new PageInfo(emps, 5); return Msg.success().add("pageInfo", page);}/** * 查询员工数据(分页查询) * @return *///@RequestMapping("/emps")public String getEmps(@RequestParam(value = "pn",defaultValue = "1") Integer pn, Model model){
// 这不是一个分页查询; // 引入PageHelper分页插件 // 在查询之前只需要调用,传入页码,以及每页的大小 PageHelper.startPage(pn,5); // startPage后面紧跟的这个查询就是一个分页查询 List
emps = employeeService.getAll(); // 使用pageInfo包装查询后的结果,只需要将pageInfo交给页面就行了。 // 封装了详细的分页信息,包括有我们查询出来的数据,传入连续显示的页数 PageInfo page = new PageInfo(emps,5); model.addAttribute("pageInfo",page); return "list";}

4.页面展示

当前 【${pageInfo.pageNum }】 页,总 【${pageInfo.pages }】 页,总 【${pageInfo.total }】 条记录

Mybatis后续的学习:

mybatis 概述 | 配置文件详解:
mybatis 事务 | 动态SQL | 多表查询:
mybatis延迟加载 | 缓存机制详解:
mybatis 注解开发版:
mybatis 逆向工程的使用:


如果有收获!!! 希望老铁们来个三连,点赞、收藏、转发
创作不易,别忘点个赞,可以让更多的人看到这篇文章,顺便鼓励我写出更好的博客
上一篇:PageHelper分页查询遇到的小问题
下一篇:pageHelper分页工具的使用

发表评论

最新留言

关注你微信了!
[***.104.42.241]2025年04月09日 14时42分54秒