如果更新而不更改任何字段值,Hibernate Envers是否会为审计表创建修订?

时间:2010-12-15 11:22:05

标签: java hibernate hibernate-envers

我目前正在测试hibernate envers,我对它的行为感到困惑。有时,当我们进行更新而不进行任何更改时,它不会记录审核。但目前确实如此。就像确定一样。

2 个答案:

答案 0 :(得分:2)

如果Hibernate无法访问实体的旧状态以与新状态进行比较,则会发生这种情况。这通常发生在持久化分离的实体时。当没有要比较的旧状态时,Hibernate假定审计属性已更改并记录修订。

您可以通过在保留实体之前使用merge()方法重新附加分离的实体来解决此问题。

答案 1 :(得分:0)

根据我的经验,如果您对实体进行了更改,它只会在修订表中创建一个条目。