springboot集成PageHelper

pom.xml里面配置jar


	
		com.github.pagehelper
		pagehelper-spring-boot-starter
		${pagehelper.spring.boot.starter.version}
	

然后在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 listCourse = courseListService.selectCourselistList(courselist);
		mmap.put("courseId",1);
		return AjaxResult.success(listCourse);
	}
}

这个时候只要前端传入pageSize 和pageNum参数就可以形成分页

你可能感兴趣的:(java,工具类)