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;
    }
}
相关推荐
编啊编程啊程4 小时前
【029】智能停车计费系统
java·数据库·spring boot·spring·spring cloud·kafka
hashiqimiya4 小时前
springboot后端的接口headers
java·spring boot·后端
ss2734 小时前
Springboot + vue 医院管理系统
vue.js·spring boot·后端
披着羊皮不是狼5 小时前
Spring Boot——从零开始写一个接口:项目构建 + 分层实战
java·spring boot·后端·分层
Spirit_NKlaus8 小时前
Springboot自定义配置解密处理器
java·spring boot·后端
用户37779672109610 小时前
BeanPostProcessor失效?
spring boot
程序员阿达10 小时前
开题报告之基于SpringBoot框架的图书借阅系统的设计与实现
java·spring boot·后端
C++chaofan11 小时前
MyBatis - Plus学习笔记
java·spring boot·笔记·后端·mysql·架构·mybatis
刘一说11 小时前
深入理解 Spring Boot 中的 Redis 缓存集成:从基础配置到高可用实践
spring boot·redis·缓存