我有一个返回92000行的SQL查询,当我使用带有ResultSet.next()的while时,它花了很多时间。我发现问题的根源是迭代条件ResultSet.next( )。您是否知道如何改善性能并减少花费时间。
答案 0 :(得分:0)
ResultSet.next()实际上适用于网络下层,并与服务器通信,以便在迭代前一行后提供更多数据。
所以有两个提示:
还要看看这两个处理您的问题和获取大小的链接:
增加获取大小意味着从数据库中获取数据的次数减少。结果集就像一个缓冲区,一旦迭代了它们就会获取X行和重新获取。
最后,您可以尝试在将一个查询拆分为4-5个查询时使用线程,这些查询在不同的线程中同时完成。