一,步骤:
1,后端代码
1.1,startPage()放在查询列表前面。
1.2,将查询结果放在getDataTable()中。
2,前端代码
二,原理:
1,后端
1.1startPage()
1.1.1,BaseController里的startPage()调用PageUtils里的StartPage()。
PageUtils里的startPage()
TableSupport.buildPageRequest()去获取请求里的pageNum,pageSize(默认1,10),orderByColumn,isAsc,reasonble
1.1.2,PageHelper()进行sql的拼接
1.2 在控制器层面,getDataTable()封装列表的查询结果
三,避坑(我遇到的)
1,请求用get传参
2,请求体不用 @RequestBody,否则传参解析不对
3,分页信息在请求头里,postman也是这样测
4,分页失效
4.1现象:分页传一页十条数据一页10条,总条数不对
4.2原因:在impl层用stream重新处理了一下,new了一个新的list对象,导致分页失效,可将这不放在数据库层面。