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