15 分页、索引与查询次数:实验卡(2026-10-04) 现有实例只有 JdbcRequestStore.find(id,tenantId),没有分页 HTTP 入口;当前数据库脚本只有 (tenant_id,status,id) 索引,SQL 次数/执行计划无已保存结果。不能把 JPA 05/06 的 Hibernate 查询统计写成本 JDBC 项目实测。 可复制的 SQL 边界实验(NOT_RUN):只在隔离 javaee_lab 运行正文“临时表”代码块,使用 psql -X -v ON_ERROR_STOP=1 和本地 JAVAEE_LAB_PASSWORD。它在同一会话内建 TEMP 表,按 id DESC 取第一页 40、30,插入较大 ID 50 后再用 OFFSET 2 取第二页(预期 30、20,与第一页重复 30),再用 id<30 的游标读取(预期 20、10)。事务末尾 ROLLBACK;保存三次查询真实结果和 psql 原退出码,不把预测值写成运行记录。 应用正常合同(NOT_RUN):实现受管的列表入口,固定两个租户、两种明细数的合成数据;第一页/第二页均带租户与状态过滤和唯一 ID 排序,按申请 ID 分页再批量读明细,核对各页不同申请集合、完整明细、租户权限与 SQL 条数。必须先保存 WAR、迁移/种子数据、应用版本、数据库计划;现有 09 场景只覆盖单申请。 应用失败合同(NOT_RUN):两次页请求间通过屏障写入新申请或变更过滤状态,对比 OFFSET 与游标的输出;越权租户游标应保持租户过滤。对固定合成数据运行 EXPLAIN (ANALYZE, BUFFERS) 查询,保存实际行数、Sort、扫描与缓冲指标,不预填“走索引”或速度。 卡片与正文 post_link JPA 05、06 均用不带日期的 basename。若缺源码/运行入口,只保留 NOT_RUN。