如何将 JDBC 结果集检索为数组列表?
2022-09-03 12:38:50
我正在执行查询以检索大量 ID(整数)。与其在 ResultSet 中迭代数百万次并将所有内容逐个复制到 ArrayList,是否有某种方法可以将所有内容作为 ArrayList 进行简单检索?
我知道ResultSet应该被迭代,因为底层实现可能是缓存的东西,但在我的情况下,我只需要立即获得所有的ID。我知道我可以将FetchSize设置为一个很大的数字,但是我仍然必须逐个检索ID。
澄清:我想这样做的原因是性能。分析显示,执行 ResultSet.next()、ResultSet.getInt() 和 ArrayList.add() 数百万次需要相当长的时间。我认为数据库(我使用的是用Java编写的H2)可能在内存中的某个地方有数组或列表,所以我正在寻找一种方法,直接将其复制到我,而不是通过ResultSet迭代接口。