RuoYI分页不准确问题解决

● 当Service层有多个查询时,ruoyi自带分页会出错,因为startPage()只对第一个查询有效,第二个查询无效;

● 当多个集合进行拼接时,同样会出现上述情况,因为ruoyi会默认对第一个查询进行分页,拼接还会导致总条数出现问题

解决:此处我们自己封装一个ruoyi的工具类,对这种情况进行分页处理

java 复制代码
public class ManualPagination {
    public static TableDataInfo pagination(List<?> list) {
        // 数据手动分页
        PageDomain pageDomain = TableSupport.buildPageRequest();
        Integer pageNum = pageDomain.getPageNum();
        Integer pageSize = pageDomain.getPageSize();
        TableDataInfo rspData = new TableDataInfo();
        rspData.setCode(HttpStatus.SUCCESS);
        rspData.setRows(
                list.stream().skip((long) (pageNum - 1) * pageSize)
                        .limit(pageSize)
                        .collect(Collectors.toList()));
        rspData.setTotal(list.size());
        return rspData;
    }
}
相关推荐
松树戈1 小时前
plus-ui&RuoYi-Vue-Plus 基于pgSql本地运行实践
前端·vue.js·spring boot·ui
TinpeaV3 小时前
websocket入门详解
java·网络·spring boot·websocket·网络协议
wxin_VXbishe3 小时前
springboot旅游小程序-计算机毕业设计源码76696
java·spring boot·python·spring·django·sqlite·flask
Warren985 小时前
Java面试八股Spring篇(4500字)
java·开发语言·spring boot·后端·spring·面试
码农飞哥5 小时前
互联网大厂Java求职面试实战:Spring Boot到微服务全景解析
java·spring boot·微服务·maven·hibernate·技术栈·面试技巧
IT成长史6 小时前
deepseek梳理java高级开发工程师springboot面试题2
java·spring boot·后端
qq_266348736 小时前
springboot AOP中,通过解析SpEL 表达式动态获取参数值
java·spring boot·后端
bing_1586 小时前
MQTT 在Spring Boot 中的使用
java·spring boot·后端·mqtt
码农飞哥12 小时前
互联网大厂Java求职面试实战:Spring Boot到微服务的技术问答解析
java·spring boot·缓存·面试·消息队列·技术栈·microservices
曼岛_13 小时前
[Java实战]Spring Boot + Netty 实现 TCP 长连接客户端及 RESTful 请求转发(二十六)
java·spring boot·tcp/ip