分页查询直接写方法
controller
@GetMapping("/currentPage")
public Result<?> findByIdPage(@RequestParam(defaultValue = "1") int currentPage ,@RequestParam(defaultValue = "10") int pageSize ){
Page<Article> list = articleService.findByIdPage(currentPage,pageSize);
return Result.sucess(list);
}
Service
//分页查询用户列表
Page<User> findByPage(int currentPage,int pagesize);
ServiceImpl
@Override
public Page<User> findByPage(int currentPage, int pagesize) {
Page<User> userPage = new Page<>();
userPage.setTotal_data(userMapper.findUserTotal());
userPage.setPageNum(currentPage);
userPage.setPageSize(pagesize);
if(userPage.getTotal_data()%pagesize ==0){
userPage.setTotalPage(userPage.getTotal_data()/pagesize);
}
else {
userPage.setTotalPage(userPage.getTotal_data()/pagesize + 1);
}
int begin = (currentPage -1 )* pagesize;
userPage.setData(userMapper.findByPage(begin,pagesize));
return userPage;
}
mapper
List<User> findByPage(int currentPage, int pagesize);
mapperXml
<select id="findByIdPage" resultType="com.example.springboot.Common.Article" parameterType="java.lang.Integer">
select * from data_data limit #{param2},#{param3}
</select>
分页查询的工具类包
package com.example.springboot.Util;
import java.util.List;
public class Page<T> {
private int index; //索引
private int pageSize; //每页显示的条数
private int totalPage; //总页数
private int pageNum; //当前页
private List<T> data;
private int total_data; //数据总和
@Override
public String toString() {
return "Page{" +
"index=" + index +
", pageSize=" + pageSize +
", totalPage=" + totalPage +
", pageNum=" + pageNum +
", data=" + data +
", total_data=" + total_data +
'}';
}
public Page(){}
public Page(int index, int pageSize, int totalPage, int pageNum, List<T> data, int total_data) {
this.index = index;
this.pageSize = pageSize;
this.totalPage = totalPage;
this.pageNum = pageNum;
this.data = data;
this.total_data = total_data;
}
public int getIndex() {
return index;
}
public void setIndex(int index) {
this.index = index;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getTotalPage() {
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public int getPageNum() {
return pageNum;
}
public void setPageNum(int pageNum) {
this.pageNum = pageNum;
}
public List<T> getData() {
return data;
}
public void setData(List<T> data) {
this.data = data;
}
public int getTotal_data() {
return total_data;
}
public void setTotal_data(int total_data) {
this.total_data = total_data;
}
}