我们是否必须使用ScrollableResults进行批量更新?

时间:2013-03-04 22:32:51

标签: hibernate

我正在阅读关于hibernate批处理的http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/batch.html。批处理udpate部分说

  

对于检索和更新数据,同样的想法适用。此外,   你需要使用scroll()来利用服务器端游标   返回多行数据的查询。

这是否意味着我们必须使用ScrollableResults来启用批量更新?或者只是意味着使用它会给我们带来更多的优势?

谢谢, 萨拉

1 个答案:

答案 0 :(得分:1)

文档指出,在尝试使用返回多行的OutOfMemoryError进行批量更新时,很容易获得select

通过使用ScrollableResults,您可以迭代这些行并仅在到达时检索它们。

这不是强制性的。如果您查看示例,它只是迭代实体,然后更新这些实体并刷新会话。

因此,如果您使用scroll()或存储List中的所有行,则取决于您。我建议ScrollableResultSet