6

我正在使用 Hibernate Envers 来审核我的实体和属性 ( org.hibernate.envers.global_with_modified_flag=true)。这似乎可行,但现在我想获取特定实体的所有属性,这些属性在给定修订版中与前一个相比发生了变化。作为奖励,将变更集从一个修订版转移到另一个修订版会很好。到目前为止,我只得到修改后的实体:

List<Object> modifiedClassesAtRevision = getAuditReader().getCrossTypeRevisionChangesReader().findEntities(revision, RevisionType.MOD)
Object modifiedObject = modifiedClassesAtRevision.get(0);

现在,由于我不想为 Java 中的所有实体创建比较方法,有没有办法获得此修订版的修改属性?类似的东西

List<String> modifiedProperties = getAuditReader().getModifiedProperties(modifiedObject, revision);

会很高兴 - 但也许我太愚蠢了,找不到那种功能。

4

1 回答 1

4

目前只能查询修改了属性的实体,请参阅http://docs.jboss.org/hibernate/core/4.1/devguide/en-US/html/ch15.html#envers-envers-tracking-properties -更改查询

尚无法获取属性已更改的描述符(变更集)。

于 2013-02-13T11:56:45.927 回答