前言:
学习了SpringBoot分页查询的两种写法,一种是手动实现,另一种是使用框架实现。现在我将具体的实现流程分享一下。
首先是手动实现分页查询:
先复习一下,SQL中的limit关键字,下面一行sql语句的意思是从第二个数据开始查,查询出两条数据
SELECT * FROM sys_user limit 1,2;
使用limit前一个参数pageNum是从第几个数据开始查,后一个参数pageSize是查询多少条数据,
注意数据库查询pageNum=0代表第一个数据。
那么在Springboot中该如何写呢?
controller:
// 分页查询
// 接口路径:/user/page?pageNum=1&pageSize=10
// @RequestParam接收
// limit第一个参数= (pageNum-1)+pageSize
@GetMapping("/page")
public List<User> findPage(@RequestParam Integer pageNum,@RequestParam Integer pageSize){
pageNum = (pageNum-1);
return userMapper.selectPage(pageNum,pageSize);
}
}
mapper:
@Select("select * from sys_user limit #{pageNum},#{pageSize}")
List<User> selectPage(Integer pageNum, Integer pageSize);
这样就写好了,测试一下:
完善一下controller,添加查询 总条数的方法:
// 分页查询
// 接口路径:/user/page?pageNum=1&pageSize=10
// @RequestParam接收 前端url
// limit第一个参数= (pageNum-1)*pageSize
@GetMapping("/page")
public Map<String, Object> findPage(@RequestParam Integ