2010-12-15 8 views
0

В настоящее время я тестирую hibernate envers, и я смущен его поведением. Иногда, когда мы делаем обновления без каких-либо изменений, он не регистрирует аудит. Но в настоящее время это так. Так же, как убедиться.Hibernate Envers создает ревизию для таблиц аудита, если вы обновляете без изменения значений полей?

ответ

0

По моему опыту, он только создает запись в таблице ревизий, если вы внесли изменения в объект.

1

Это может произойти, если Hibernate не имеет доступа к старому состоянию объекта для сравнения с новым состоянием. Обычно это происходит при сохранении отдельных отдельных объектов. Когда нет старого состояния для сравнения, Hibernate предполагает, что проверенное свойство изменилось и ввело в журнал ревизию.

Вы можете обойти эту проблему путем повторного присоединения отдельных объектов, используя метод merge(), перед тем как сохранить объект.

+0

Удивительное объяснение! – zodi91 2017-03-29 17:22:35

Смежные вопросы