【发布时间】:2010-04-27 10:28:22
【问题描述】:
我们正在尝试迭代数据库中的大量行并将它们转换为对象。行为如下:
- 结果将按序列ID排序,当序列ID改变时将创建一个新对象。创建的对象将被发送到外部服务,有时必须等待再发送另一个(这意味着不会立即使用下一组数据)
- 我们已经在 iBatis 3 中投入了代码,因此 iBatis 解决方案将是我们的最佳方法(我们尝试使用 RowBounds,但还没有看到它是如何进行底层迭代的)。
- 我们希望在最小化内存使用和减少 DB 访问次数之间取得平衡。
- 我们也对纯 JDBC 方法持开放态度,但我们希望该解决方案适用于不同的数据库。
更新 1:
- 我们需要尽可能少地调用 DB(1 次调用是理想的情况),同时还要防止应用程序使用过多的内存。对于此类问题,是否还有其他解决方案,可能是纯 JDBC 或任何其他技术?
更新 2
- 查询将由后端驱动,并且在给定时间只会执行 1 个实例。
感谢并希望听到您对此的见解。
【问题讨论】: