Page类 与easy UI交互

Page类

public Page(Integer currentPage, Integer pageSize, Long total, List<?> dataList) {
        this.page = currentPage;
        this.pageSize = pageSize;
        this.total = total == null ? 0 : total.intValue();
        this.dataList = dataList;
    }

这里有四参构造,可以看到
page 代表 当前页 一般1
pageSize 代表 页大小,就是1页显示几条数据 给个8
total 代表 一共多少条数据这里 给个50
dataList 数据集

构造一个Page对象

1, 先准备好数据集findList
2, 构建pageInfo
3, 构建page

着重看一下pageInfo,它的构造,以及它有什么用?
构造: 用数据集直接构造即可
用处: 它可以为构建page时,提供total,和List

public Page findBaIntoBoundDetail4Page(BaIntoBoundDetailQuery param) {
        if(param == null){
            return new Page(param.getCurrentPage(), param.getPageSize(), 0L, null);
        }
        Example example = new Example(BaIntoBoundDetail.class);
        Example.Criteria cri = example.createCriteria();
        // 设置查询条件
        BaIntoBoundDetailServiceUtil.initFindBaIntoBoundDetailParam(cri, param);
        // 排序
        example.setOrderByClause("id desc");
        // 设置分页
        PageHelper.startPage(param.getCurrentPage(), param.getPageSize());
        // 查询
        List<BaIntoBoundDetail> findList = baIntoBoundDetailMapper.selectByExample(example);
        // 如果需要特殊处理返回结果,可在此处重新封装

        PageInfo<BaIntoBoundDetail> pageInfo = new PageInfo<>(findList);
        return new Page(param.getCurrentPage(), param.getPageSize(), pageInfo.getTotal(), pageInfo.getList());
    }

看下PageInfo的处理:
经过两层super之后:

public PageSerializable(List<T> list) {
        this.list = list;
        if (list instanceof Page) {
            this.total = ((Page)list).getTotal();
        } else {
            this.total = (long)list.size();
        }

    }

所以构造Page时,可以用 pageInfo.getTotal和pageInfo.getList来当作参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值