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;
    }
}
相关推荐
smileNicky11 小时前
SpringBoot系列之从繁琐配置到一键启动之旅
java·spring boot·后端
柏油14 小时前
Spring @TransactionalEventListener 解读
spring boot·后端·spring
小小工匠15 小时前
Maven - Spring Boot 项目打包本地 jar 的 3 种方法
spring boot·maven·jar·system scope
板板正17 小时前
Spring Boot 整合MongoDB
spring boot·后端·mongodb
泉城老铁18 小时前
在高并发场景下,如何优化线程池参数配置
spring boot·后端·架构
泉城老铁18 小时前
Spring Boot中实现多线程6种方式,提高架构性能
spring boot·后端·spring cloud
hrrrrb19 小时前
【Java Web 快速入门】九、事务管理
java·spring boot·后端
布朗克16821 小时前
Spring Boot项目通过RestTemplate调用三方接口详细教程
java·spring boot·后端·resttemplate
IT毕设实战小研1 天前
基于Spring Boot校园二手交易平台系统设计与实现 二手交易系统 交易平台小程序
java·数据库·vue.js·spring boot·后端·小程序·课程设计
孤狼程序员1 天前
【Spring Cloud 微服务】1.Hystrix断路器
java·spring boot·spring·微服务