1.pom.xml文件中引入依赖
注意1.2.3版本,太低了会和springboot版本不兼容
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.3</version>
</dependency>
2.查询的函数不做改变
我直接用的dao的原生sql查询,自己原来用哪种查询不变就好了
@Select("select * from UnionTable")
List<unionTable> findUnionTable();
3.控制层做分页控制(关键步骤)
一定注意注意:!!!分页不生效可能是
PageHelper.startPage(pages,pageSizes);只对后面第一个查询语句起分页作用,你查询的语句必须紧跟在startPage后面,写到别处不生效,血泪史!!!
@PostMapping(value = "/findData")
public result findData(@RequestParam("pages") Integer pages,@RequestParam("pageSizes") Integer pageSizes,@RequestParam("tableName") String tableName){
//加入页码的处理
pages = pages == null || pages <= 0 ? 1:pages;
pageSizes = pageSizes == null || pageSizes <= 0 ? 20:pageSizes;
PageHelper.startPage(pages,pageSizes);//设置分页的起始码以及页面大小
List ic=findIcAddressDao.findIcAddress(tableName);
PageInfo pageInfo = new PageInfo(ic);//传入list就能够了
return new result(200, "登录成功", pageInfo);
}
备注:result是我自己封装的返回状态码,代码如下
package com.xu.drools.bean;
public class result {
private Integer code;// 返回码
private String message;//返回信息
private Object data;// 返回数据
public result(Integer code,String message,Object data) {
this.code = code;
this.message = message;
this.data=data;
}
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public Object getData() {
return data;
}
public void setData(Object data) {
this.data = data;
}
}
查询结果如下,OK了