解决批量更新的审核问题

时间:2012-09-11 13:15:53

标签: bulkinsert hibernate-envers

在我正在处理的应用程序中,我使用spring,hibernate和envers进行审计。 envers可以使用诸如 hibernateTemplate.insert hibernateTemplate.save hibernateTemplate.saveOrUpdate 之类的调用。但是当我调用 hibernateTemplate.bulkUpdate 时,它似乎无法工作。

我搜索了解决方案,发现envers不支持bulkUpdate。

下面的链接中提供了一个解决方法,但我无法得到它。

Envers Bulk insert/updates

如果有人可以为此提供解决方法/样本,那将会有所帮助。

由于

1 个答案:

答案 0 :(得分:2)

文档是正确的。不审核HQL和本机SQL操作。

由于批量更新的性能会受到审核的影响,您可能希望更改您的设计 - 例如,如果您有一个包含相关子项的父实体,并且您正在对子记录执行批量更新,那么您可以更新父记录的属性,然后在进行批量更新后调用saveOrUpdate。

另一个选择是手动执行审计表上的批量更新,但它不会很优雅。我设法通过改变上面的设计解决了我的问题。