若依分页问题及解决方法

前端参数

const queryParams = reactive({

批号: null,

pageNum: 1,

pageSize: 10

})

前端接口

export function getLlist(params) {

return request({

url: '/bianmu/cataloging/literature/' ,

method: 'Post',

data: params,

})

}

后端控制器

public TableDataInfo getList(@RequestBody Map<String, Object> params) {

复制代码
        //startPage();Service 类上的 @Transactional 注解导致 PageHelper 分页拦截器失效。
在事务环境下,PageHelper 的 ThreadLocal 变量可能会被事务管理器清理或干扰,导致分页参数丢失。
        // 手动获取分页参数
        Integer pageNum = params.get("pageNum") != null ? Integer.parseInt(params.get("pageNum").toString()) : 1;
        Integer pageSize = params.get("pageSize") != null ? Integer.parseInt(params.get("pageSize").toString()) : 10;
        Integer 批号 = params.get("批号") != null ? Integer.parseInt(params.get("批号").toString()) : 0;
        
        // 查询所有数据
        List<Map<String, Object>> allList = catalogingService.getLiteratureByPiHao(批号);
        
        // 手动分页
        int total = allList.size();
        int startIndex = (pageNum - 1) * pageSize;
        int endIndex = Math.min(startIndex + pageSize, total);
        
        List<Map<String, Object>> pageList = new ArrayList<>();
        if (startIndex < total) {
            pageList = allList.subList(startIndex, endIndex);
        }
        
        // 构建返回结果
        TableDataInfo rspData = new TableDataInfo();
        rspData.setCode(HttpStatus.SUCCESS);
        rspData.setMsg("查询成功");
        rspData.setRows(pageList);
        rspData.setTotal(total);
        
        return rspData;
    }

若依框架分页流程

前端 queryParams 对象

↓

URL: /List?批号=2026009&pageNum=1&pageSize=10

↓

后端 Spring MVC 自动将 URL 参数绑定到 对象

↓

startPage() 自动从 URL 参数中读取 pageNum=1, pageSize=10

↓

PageHelper 拦截下一个 SQL 查询,添加分页

↓

返回分页结果 { rows: ..., total: 17 }

相关推荐
CV工程师丁Sir1 小时前
ArkWeb 手记 04|DevTools 调试与缓存清理
java·spring·缓存·harmonyos
Sarvartha7 小时前
final 关键字
java·开发语言
2601_952047797 小时前
单一策略深度教程:用轻易云把集成任务的报错实时推送到钉钉机器人
java·机器人·钉钉
yi0118 小时前
LeetCode 219:存在重复元素 II——哈希表记录“最近一次出现的位置”
数据结构·人工智能·笔记·python·算法·leetcode·哈希表
Setsuna_F_Seiei8 小时前
前端转型 Agent 开发 06 之 Agent Memory 记忆系统(让 Agent 更智能,更懂你)
前端·agent·ai编程
数据狐(Datafox)8 小时前
淘宝图片搜索 API 落地实战:基于以图搜货搭建跨境电商选品系统
java·大数据·微服务
zhangzeyuaaa9 小时前
Ruby 多线程、GVL(GIL)与 Mutex 完全指南
开发语言·前端·ruby
默_笙9 小时前
🌊 向量库和 ES 都查不出"关系",我只好给奶茶建了一张人脉网
前端·javascript
优选资讯10 小时前
标签打印软件怎么对接 Excel 数据
前端·excel