2013-07-29 8 views
2

Я использую Spring v2.5.5/Hibernate v3.6.3 вместе с Hibernate Envers для проверки изменений.Hibernate включает одну ревизию для нескольких транзакций

В настоящее время создается новая редакция для каждой транзакции.

Но в моем приложении, когда я делаю очень маленькую единицу работы слишком часто, например, 1 обновление за транзакцию, генерируется огромное количество записей аудита.

Возможно ли сконфигурировать Envers для определенной небольшой единицы работы для создания отдельной ревизии для нескольких транзакций вместо 1 ревизии на транзакцию.

ответ

1

Envers будет генерировать ревизию каждый раз, чтобы сохранить или обновить объекты. Невозможно переопределить это. Envers отлично, потому что он очень легко и быстро реализуется, но он также может генерировать множество записей аудита очень быстро в зависимости от приложения. Возможно, вам потребуется изучить индивидуальную реализацию аудита с помощью триггеров или собственного кода ведения журнала, если Envers слишком шумно для вашего приложения.

+0

Это окончательное решение, которое я мог бы сделать. Но нужно знать, возможно ли это через Envers. – Ambrish

+0

К сожалению, нет. Не обойтись без основной функции ядра Envers. Будет проще написать собственный журнал аудита, чтобы вы могли настроить, что такое единица работы и что нужно регистрировать. –