微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java-使用jdbcTemplate分页

我们现在面临的问题之一是处理从数据库中获得的大型ResultSet的分页.

当前,作为sql存储过程返回的行调用jdbcTemplate.query范围从100K到300K,并且分页是在extractData方法内完成的.

用户显示页面只有20行.

这非常慢,有没有一种方法可以使用jdbcTemplate从存储过程的结果中获取数据页.

最佳答案
我相信JdbcTemplate没有用于分页的特定功能.但是,即使这样做也可能无法帮助您的代码更快地运行.

通常,面向用户页面的大小不超过200行,因此查询100-300K行似乎过多,浪费了大量内存.

您首先需要确定要使用哪种分页策略.两种常见的策略是查询前N个页面,并将其存储在临时缓存中-或仅查询足以填充一个页面大小(例如:200行),并且仅在用户请求时查询接下来的200行.

您还需要确定缓慢的真正原因是什么.行大小是一个因素,但不是唯一因素.您必须分析架构结构,索引,查询联接等.

请记住,在正常使用情况下-尽管您最多可以向用户展示10000个页面,但是典型用户不太可能浏览所有这些页面-也许只有前5-10个页面很重要-因此,如果您可以,将结果集限制为少量会更有意义

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐