pom.xml里面配置jar
<!-- pagehelper 分页插件 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>${pagehelper.spring.boot.starter.version}</version>
</dependency>
然后在yml里 配置
# PageHelper分页插件
pagehelper:
#连接的数据库类型,因为数据库分页的写法可能不同,我这里是sqlserver,你的可能是oracle或者mysql
helperDialect: sqlserver
reasonable: true
supportMethodsArguments: true
params: count=countSql
然后我是在BaseController里面加了一个方法,每个controller继承BaseController
/**
* 设置请求分页数据
*/
protected void startPage()
{
PageDomain pageDomain = TableSupport.buildPageRequest();
Integer pageNum = pageDomain.getPageNum();
Integer pageSize = pageDomain.getPageSize();
if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize))
{
String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy());
PageHelper.startPage(pageNum, pageSize, orderBy);
}
}
然后在你需要分页的地方调用startPage()
eg:
@RestController
@RequestMapping(value="/course")
public class CourseListController extends BaseController{
@Autowired
private CourseListService courseListService;
/**
* 获取课程列表,并将课程id存入session当中
* @param courselist
* @return list
* 2019年8月15日
* lijinghua
*/
@PostMapping("/courseList")
public AjaxResult listCourse(Courselist courselist,ModelMap mmap){
//分页
startPage();
List<Courselist> listCourse = courseListService.selectCourselistList(courselist);
mmap.put("courseId",1);
return AjaxResult.success(listCourse);
}
}
这个时候只要前端传入pageSize 和pageNum参数就可以形成分页