1、引入jar包(示例)

implementation group: 'com.github.pagehelper', name: 'pagehelper-spring-boot-starter', version: 'XXXX'

2、添加配置(示例)

#pagehelper分页插件
pagehelper:
helper-dialect: oracle
reasonable: false
support-methods-arguments: true
params: count=countsql

  

3、分页插件参数介绍:

  • helperDialect:分页插件会自动检测当前的数据库链接,自动选择合适的分页方式。 你可以配置helperDialect属性来指定分页插件使用哪种方言。配置时,可以使用下面的缩写值:

    oracle,mysql,mariadb,sqlite,hsqldb,postgresql,db2,sqlserver,informix,h2,sqlserver2012,derby

    特别注意:使用 SqlServer2012 数据库时,需要手动指定为 sqlserver2012,否则会使用 SqlServer2005 的方式进行分页。

    你也可以实现 AbstractHelperDialect,然后配置该属性为实现类的全限定名称即可使用自定义的实现方法。

  • offsetAsPageNum:默认值为 false,该参数对使用 RowBounds 作为分页参数时有效。 当该参数设置为 true 时,会将 RowBounds 中的 offset 参数当成 pageNum 使用,可以用页码和页面大小两个参数进行分页。
  • rowBoundsWithCount:默认值为false,该参数对使用 RowBounds 作为分页参数时有效。 当该参数设置为true时,使用 RowBounds 分页会进行 count 查询。
  • pageSizeZero:默认值为 false,当该参数设置为 true 时,如果 pageSize=0 或者 RowBounds.limit = 0 就会查询出全部的结果(相当于没有执行分页查询,但是返回结果仍然是 Page 类型)。
  • reasonable:分页合理化参数,默认值为false。当该参数设置为 true 时,pageNum<=0 时会查询第一页,pageNum>pages(超过总数时),会查询最后一页。默认false 时,直接根据参数进行查询。
  • params:为了支持startPage(Object params)方法,增加了该参数来配置参数映射,用于从对象中根据属性名取值, 可以配置 pageNum,pageSize,count,pageSizeZero,reasonable,不配置映射的用默认值, 默认值为pageNum=pageNum;pageSize=pageSize;count=countSql;reasonable=reasonable;pageSizeZero=pageSizeZero
  • supportMethodsArguments:支持通过 Mapper 接口参数来传递分页参数,默认值false,分页插件会从查询方法的参数值中,自动根据上面 params 配置的字段中取值,查找到合适的值时就会自动分页。 使用方法可以参考测试代码中的 com.github.pagehelper.test.basic 包下的 ArgumentsMapTest 和 ArgumentsObjTest
  • autoRuntimeDialect:默认值为 false。设置为 true 时,允许在运行时根据多数据源自动识别对应方言的分页 (不支持自动选择sqlserver2012,只能使用sqlserver)。
  • closeConn:默认值为 true。当使用运行时动态数据源或没有设置 helperDialect 属性自动获取数据库类型时,会自动获取一个数据库连接, 通过该属性来设置是否关闭获取的这个连接,默认true关闭,设置为 false 后,不会关闭获取的连接,这个参数的设置要根据自己选择的数据源来决定

4.代码中引入(示例)

Page<Object> page = PageHelper.startPage(pageNo, pageSize);
List<ProductGoodsBindVo> vos = proBindDao.productGoodsBindPage(storeName, productName);

 

分页配置参数介绍参考:https://www.cnblogs.com/tp-apricot/articles/10967431.html

最新文章

  1. Nginx设置线程数为整机内核数的俩倍!
  2. LeetCode: Linked List Random Node
  3. mongodb,redis,hbase 三者都是nosql数据库,他们的最大区别和不同定位是什么?
  4. topsort
  5. 八大排序算法之二希尔排序(Shell Sort)
  6. eclipse汉化安装
  7. Spring整合CXF步骤,Spring实现webService,spring整合WebService
  8. Mysql优化相关总结
  9. U+00A0 (Non-breaking space)无法被正确压缩
  10. 认识到了x64程序的必要性
  11. [SOJ]连通性问题
  12. JSONP(Json with padding)
  13. spring boot与jdbcTemplate的整合案例2
  14. HDU--2114
  15. [PHP] ubuntu下使用uuid扩展获取uuid
  16. 好代码是管出来的——.Net Core中的单元测试与代码覆盖率
  17. 想知道谁是你的最佳用户?基于Redis实现排行榜周期榜与最近N期榜
  18. 洛谷 P3380 【【模板】二逼平衡树(树套树)】
  19. Mysql支持哪几种索引
  20. 手动下载python更新后 换回以前版本

热门文章

  1. LambdaQueryWrapper 的条件构造器方法对应Sql
  2. java传递参数调用python完成剪切多个视频最终拼接成一个
  3. vue table表格form表单校验输入内容,elment ui table内容校验 form表单input验证
  4. lua 调用C函数
  5. idea启动项目,报java.lang.OutOfMemoryError: PermGen space 和启动项目很慢的问题解决
  6. SQL面试题,工作整理sql
  7. 26 docker 安装 solr
  8. urllib编码问题踩坑
  9. 【笔记】Win7连接公司内网无法打开网页
  10. ksfitappUI自动化(准备+安装环境)