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;
    }
}
相关推荐
LiRuiJie32 分钟前
深入剖析Spring Boot / Spring 应用中可自定义的扩展点
java·spring boot·spring
尚学教辅学习资料3 小时前
Ruoyi-vue-plus-5.x第五篇Spring框架核心技术:5.1 Spring Boot自动配置
vue.js·spring boot·spring
晚安里3 小时前
Spring 框架(IoC、AOP、Spring Boot) 的必会知识点汇总
java·spring boot·spring
上官浩仁4 小时前
springboot ioc 控制反转入门与实战
java·spring boot·spring
叫我阿柒啊4 小时前
从Java全栈到前端框架:一位程序员的实战之路
java·spring boot·微服务·消息队列·vue3·前端开发·后端开发
中国胖子风清扬5 小时前
Rust 序列化技术全解析:从基础到实战
开发语言·c++·spring boot·vscode·后端·中间件·rust
JosieBook9 小时前
【SpringBoot】21-Spring Boot中Web页面抽取公共页面的完整实践
前端·spring boot·python
刘一说9 小时前
Spring Boot+Nacos+MySQL微服务问题排查指南
spring boot·mysql·微服务
叫我阿柒啊13 小时前
从Java全栈到云原生:一场技术深度对话
java·spring boot·docker·微服务·typescript·消息队列·vue3
计算机毕设定制辅导-无忧学长13 小时前
MQTT 与 Java 框架集成:Spring Boot 实战(一)
java·网络·spring boot