【浅谈PageHelper使用注意】pageSize和resultData(list).size不相等问题

本文介绍了在使用PageHelper进行Java分页查询时遇到的问题,即pageSize与resultData.size不一致。问题源于PageHelper的startPage方法必须紧跟查询语句,否则可能导致分页失效。解决方案是确保startPage方法在查询数据前调用,并针对不同的查询集合分别进行分页操作。
摘要由CSDN通过智能技术生成

【前情】
本人代码小白,本意记录自省,如有谬误请指出QAQ望轻喷

这个查询分页方法涉及跨库查询,我要查channel库channel表里存的数据,但所有数据源于base库base表。
另外channel表只存储了base表的标识id字段,前端要展示的大部分字段在base表里,但部分channel表特有的字段也要展示。
而且,共有4个查询条件,2个是base表特有的,2个是channel表特有的。

找错过程可以不看,原因总结在最底下

这个逻辑我觉得有一些复杂,冥思苦想之后决定:中间有个倒手的过程,把标识id都查出来,再跨库把需要的两表字段一起拿出来(sql:……from channel.channel as channel join base.base.as base on base.baseId = channel.baseId where ……)

serviceImpl
那么这个定义装标识id的集合和最终查询结果的集合

@Override
    public PageDTO<Channel> queryChannelByPage(Channel channel) {
        channel.init();//此处为自己写的方法 初始化分页pageNum和pageSize 默认值
        PageHelper.startPage(channel.getPageNum(),channel.getPageSize());
        //业务查询
        List<Integer> ids = null;        //存放初次查询到的brandId
        List<Channel> list = new 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值