springboot+pagehelper做分页处理

做分页处理,一直觉得pagehelper比较好用,以下是分享springboot+pagehelper做的分页处理。
1.导入pagehelper所需的jar


	com.github.pagehelper
	pagehelper-spring-boot-starter
	1.2.3

2.springboot中加入yml

pagehelper:
    auto-dialect: mysql
    reasonable: true
    close-conn: false

3.根据不同的前端框架返回要求格式进行返回数据,创建返回数据的model,我这里是采用的datatables做的数据表格,所以的他的返回数据格式如下:

package com.zkr.cxhjcxt.page;

import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * Created by youzongxu on 2018/8/29.
 */
@Data
public class PageResult implements Serializable{
    private static final long serialVersionUID = 7223334258815093683L;
    private Long recordsTotal;
    private Long recordsFiltered;
    private List data;

    public PageResult (long recordsTotal, long recordsFiltered, List data){
        super();
        this.recordsTotal = recordsTotal;
        this.recordsFiltered = recordsFiltered;
        this.data = data;
    }
}

4.controller分页写法

    /**
     * jira缺陷列表
     * @param jiraBugWhere
     * @return
     */
    @ApiOperation(value = "jira缺陷列表获取")
    @GetMapping
    public PageResult list(JiraBugWhere jiraBugWhere){
        //处理引入pagehelper,标明开始页以及每页所展示的相关条数
        PageHelper.startPage(jiraBugWhere.getStart(),jiraBugWhere.getLength());
        //根据条件所查询出的数据集合
        List lists = jiraBugDao.list(jiraBugWhere);
        //pagehelper做分页处理
        PageInfo p = new PageInfo<>(lists);
        //返回结果集
        return new PageResult(p.getTotal(),p.getTotal(),p.getList());
    }

你可能感兴趣的:(实用的处理小技巧)