MySQL中分页查询的基本语法
- 需要使用limit关键字来实现分页查询的操作
- 其中含有两个参数
- 参数1:起始索引(由0开始)
- 参数2:查询返回的记录数
- 具体sql语句如下
-
select * from emp limit 0,5;
-
运行结果如下
-
-
查询第n页数据,每页展示m条数据
- 具体的SQL语句
-
select * from emp limit (n-1)*m ,m;
具体页面分析
- 获取总记录数的SQL语句
-
select count(*) from emp;
前后端交互所要传递的参数
- 前端:获取数据的页数page、每页展示数据量pagesize
- 后端:数据列表(List集合rows)、总记录数(total),这个数据都是在接口文档中规定好的
- 后端响应给前端两个不同类型的数据(rows和total),需要创建一个实体类(PageBean)来进行封装
接口文档对于该接口的描述
- 接口文档的链接:
- 【腾讯文档】SpringBoot案例所需文档
https://docs.qq.com/doc/DUkRiTWVaUmFVck9N
- 【腾讯文档】SpringBoot案例所需文档
三层架构每层代码实现的功能
控制层
- 控制层中接收分页参数page(页码)、pageSIze(每页数据量)
- 调用Service进行分页查询,将查询结果封装到PageBean对象中
- 控制层将返回结果封装到统一响应结果Reault类中,返回给前端
持久层
- 通过两条SQL语句分别获取总记录数(total)和每页数据信息(rows)
业务层
- 分别调用Mapper接口中的方法来查询总记录数(total)和数据列表(rows)
- 将查询的total和rows封装在PageBean对象中,返回给控制层