在SpringBoot下的pageHelper分页实践

Java框架

浏览数:34

2019-8-23

对于常见的信息系统来说,数据多了后一屏幕就显示不完,显示不完怎么办?就要分页显示。本文介绍在springboot框架下pageHelper分页插件的使用实践。

1)分页的基本概念

  • 分页的基本描述:一共要显示几页数据,当前显示的是第几页,显示了多少条数据
  • 换成变量就是:totalPageNum、pageNum、pageSize
  • 分页有两大类:前端分页(逻辑分页)、后端分页(物理分页)
  • 一般数据不多、不怎么动态变化的,就用前端分页
  • 大部分情况下,后端分页多一些

一共要显示100页数据,当前显示的是第1页,显示了10条数据

2)物理分页的介绍

  • 物理分页是基于数据库SQL提供的关键字
  • 比如Mysql数据库支持的关键字是limit
    举例:
  1. 正常
SELECT * FROM MyTable;
假设以上查询可以获取到100行数据
  1. 加上limit关键字
SELECT * FROM MyTable LIMIT 0,10;
以上查询的意思是从索引0开始,获取10行数据

SELECT * FROM MyTable LIMIT 10,10;
以上查询的意思是从索引10开始,获取10行数据

以此类推,你就知道分页数据是如何实现获取的了。

3)pageHelper控件介绍

  • pagehelper是一款优秀的分页插件,帮我我们减轻了很多代码工作量,灵活发挥了在项目中的作用。
  • 传统时代每次处理分页都要进行两次查询:一次获取总的数据行数、一次获取当前页的数据。很多代码都是冗余的。
  • pagehelper帮助我们灵活解决了这个问题,减轻了很大一部分开发工作量。

4)在SpringBoot下如何使用这个插件

  • 最重要: 如果使用SpringBoot框架的话,切记要用这个插件https://github.com/pagehelper/pagehelper-spring-boot
  • pagehelper-spring-boot 支持SpringBoot2.0、支持pageHelper5.0
  • 使用说明里的内容很多,估计看的头晕,建议直接看:
      1. 如何在代码中使用
        • 2). PageHelper.startPage 静态方法调用
  • 不需要额外的配置,直接写代码试试

5)总结

学习新事物的路径:了解基本原理、仔细阅读官方说明、并试运行代码、有问题先看官方的issues或者去简书、掘金等垂直平台寻找答案,千万不要百度乱找解决方案,看到的往往都是到处被拷贝粘贴传来传去的东西,垃圾内容、过时内容、人云亦云的内容等居多。

纸上得来终觉浅,觉知此事要躬行!

作者:风行者1024