json - 使用分页 JPA Postgresql 检索元素的全局索引
问题描述
在我的项目中有一个检索文档列表的服务。到目前为止,检索它们的方法是使用分页对象,这样我们就不会将所有元素发送回前端。
public Page<Document> findDocumentPage(Pageable pageable) {
return this.documentService.findAllByPage(pageable);
}
问题是我需要所有页面的文档的全局索引。例如,假设我有一个页面列表,其中包含查询后的结果:
firstResult:{
page: 1,
document_list: [{doc:{ id: a, content: ''}},
{doc:{ id: b, content: ''}},
{doc:{ id: c, content: ''}}]
}
secondResult:{
page: 2,
document_list: [{doc:{ id: d, content: ''}},
{doc:{ id: e, content: ''}},
{doc:{ id: f, content: ''}}]
}
}
这些结果彼此独立。有没有办法告诉 id 为“e”的文档是所有页面结果中的第 5 个元素,而无需访问前一页的结果。页面也可以有不同的大小,有些可能有 30 个结果,其他 20 个,可以是 x。
我可以在后端存储一个包含前几页元素数量的列表,然后根据页码、当前页面上的索引和前几页的大小计算索引。然而,这对我来说似乎不是一个很好的解决方案。
解决方案
推荐阅读
- c - 使用 execlp 在 C 中写入错误:Broken Pipe
- executable-jar - 无法使用从 MAVEN 创建的 JAR 直接运行 Jmeter 性能测试
- mysql - 将数据从 Maria DB 表导出到 CSV 文件的 AWS 权限问题
- ruby - 如何更改 rails_admin 中删除操作的自定义错误消息?
- python - 无法在 ROS 中检测到自定义消息子目录(即 package.msg)
- istio - 未使用 Istio 和 Sleuth 采样的跟踪
- java - 使用php上传日志的进度条
- xml - 如何将 FAB 的背景设置为渐变
- ironpython - Spotfire textArea 导出为 PDF
- java - Error processing condition on org.springframework.boot.actuate.autoconfigure.metrics.MetricsEndpointAutoConfiguration