分页查询常用式

1.依赖配置

pageHelper-spring-boot-starter

2.实体类

@Data
public class JsonPage<T> implements Serializable{

	@ApiModelProperty(value="当前分页",name="page")
	private Integer page;
	
	@ApiModelProperty(value="总页条数",name="pageSize")
	private Integer pageSize;
	
	@ApiModelProperty(value="总条数",name="totalPage")
	private Integer totalPage;
	
	@ApiModelProperty(value="总页数",name="total")
	private Long total;
	
	@ApiModelProperty(value="分页数据",name="list")
	private List<T> list;
	
	// 将 PageHelper 分页后的list转为分页信息
	public static <T> JsonPage<T> restPage(PageInfo<T> pageInfo){
		JsonPage<T> result =new JsonPage<T>();
		result.setTotalPage(pageInfo.getPages());
		result.setPage(pageInfo.getPageNum());
		result.setPageSize(pageInfo.getPageSize());
		result.setTotal(pageInfo.getTotal());
		result.setList(pageInfo.getList());
		return result;
	}
}

3.分别需要用的接口

mapper:  List<UserVo> list();

service : JsonPage<UserVo> listById(Integer page,Integer pageSize);

4.业务逻辑层

public JsonPage<UserVo> lsitById(Integer page,Integer pageSize){

    PageHelper.startPage(page,pageSize);
    List<UserVo> lint = mapper.list();
    
    return JsonPage.restPage(new JsonInfo<>(list));

}

5.控制层

    @GetMapping("/list")
    @ApiOperation("分页查询秒杀列表信息")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "页码",name = "page",dataType = "int",
                    required = true, example = "1"),
            @ApiImplicitParam(value = "每页条数",name = "pageSize",dataType = "int",
                    required = true, example = "3")
    })
    public JsonResult<JsonPage<UserVo>> listByIdJson(
                                        Integer page,Integer pageSize){
        JsonPage<UserVO> list = service.listById(page,pageSize);
        return JsonResult.ok(list);
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值