Получение измененных свойств путем ревизии
Я использую 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);
Было бы неплохо иметь - но, возможно, я просто слишком глуп, чтобы найти такую особенность.1 ответ:
В настоящее время возможен только запрос сущностей, в которых было изменено свойство, см. http://docs.jboss.org/hibernate/core/4.1/devguide/en-US/html/ch15.html#envers-envers-tracking-properties-changes-queries.
Получение дескриптора (набора изменений), свойства которого изменены, пока невозможно.