20201210邹瑞
总结
PageHelper介绍
PageHelper是国内非常优秀的一款开源的mybatis分页插件,它支持基本主流与常用的数据库,例如 mysql、oracle、mariaDB、DB2、SQLite、Hsqldb等。
本项目在github 的项目地址:https://github.com/pagehelper/Mybatis-PageHelper
PageHelper使用
集成
引入分页插件有下面2种方式,推荐使用 Maven 方式。
配置
特别注意,新版拦截器是 com.github.pagehelper.PageInterceptor 。 com.github.pagehelper.PageHelper 现在是一个特殊的 dialect 实现类,是分页插件的默认实现 类,提供了和以前相同的用法。
在 MyBatis 配置 xml 中配置拦截器插件
在 Spring 配置文件中配置拦截器插件
使用 spring 的属性配置方式,可以使用 plugins 属性像下面这样配置:
helperDialect=mysql
reasonable=true
PageHelper.startPage 静态方法调用
这种方式是我们要掌握的在你需要进行分页的 MyBatis 查询方法前调用 PageHelper.startPage 静态 方法即可,紧跟在这个方法后的第一个MyBatis 查询方法会被进行分页。除了 PageHelper.startPage 方法外,还提供了类似用法的 PageHelper.offsetPage 方法。
//获取第1页,10条内容,默认查询总数count
PageHelper.startPage(1, 10);
//紧跟着的第一个select方法会被分页
List
assertEquals(2, list.get(0).getId());
assertEquals(10, list.size());
//分页时,实际返回的结果list类型是Page
assertEquals(182, ((Page) list).getTotal());
近期评论