本博客中使用到的JsonUtil参看博客:Jackson工具类
MyBatis 版- 使用分页插件:
com.github.pagehelper
pagehelper
5.3.0
- PageBean
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public class PageBean {
/**
* 每页显示的条数
*/
private Integer pageSize = 10;
/**
* 当前的页码
*/
private Integer current;
/**
* 一共有多少条记录
*/
private Long total;
/**
* 一共有多少页
*/
private Integer pages;
/**
* 每一页所显示的数据
*/
private List result;
/**
* 分页请求路径
*/
private String url;
@Override
public String toString() {
return JsonUtil.obj2String(this);
}
/**
* 将MyBatisPlus返回的IPage数据封装为自定义的PageBean
*
* @param page
* @param
* @return
*/
public static PageBean init(Page page) {
PageBean pageBean = new PageBean();
pageBean.setCurrent(page.getPageNum());
pageBean.setPageSize(page.getPageSize());
pageBean.setPages(page.getPages());
pageBean.setTotal(page.getTotal());
pageBean.setResult(page.getResult());
return pageBean;
}
}
MyBatisPlus版
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.pagehelper.Page;
import com.resume.utils.JsonUtil;
import lombok.Getter;
import lombok.Setter;
import java.util.List;
/**
* 分页Bean
*
* @param
* @author 梁云亮
*/
@Setter
@Getter
public class PageBean {
/**
* 每页显示的条数
*/
private Long size = 10L;
/**
* 当前的页码
*/
private Long current;
/**
* 一共有多少条记录
*/
private Long total;
/**
* 一共有多少页
*/
private Long pages;
/**
* 每一页所显示的数据
*/
private List records;
/**
* 分页请求路径
*/
private String url;
/**
* 将MyBatisPlus的IPage对象转换为自定义的PageBean对象
*
* @param page
* @return
*/
public static PageBean init(IPage page) {
PageBean pageBean = new PageBean();
pageBean.setSize(page.getSize());
pageBean.setCurrent(page.getCurrent());
pageBean.setTotal(page.getTotal());
pageBean.setPages(page.getPages());
pageBean.setRecords(page.getRecords());
return pageBean;
}
@Override
public String toString() { //测试时使用
return JsonUtil.obj2StringPretty(this);
}
}
控制器
@GetMapping("/getAllUser/{pageNum}/{pageSize}")
public ModelAndView getAllUser(
@PathVariable("pageNum") Integer pageNum,
@PathVariable("pageSize") Integer pageSize,
ModelAndView mav){
PageBean pageBean = userService.selectPage(pageNum, pageSize);
pageBean.setUrl("user/getAllUser");
mav.addObject("pageBean",pageBean);
mav.setViewName("user/list");
return mav;
}
通用分页代码
上一页
上一页
${index}
${index}
${index}
${index}
下一页
下一页
效果图