2016-08-01 5 views
-2

Я разрабатываю Java Web JSF и Hibernate (DB MySQL). У меня есть таблица с полями продукта (id, name, description и price), предположим, что была сохранена запись любого (1, 'cd', 'bee gees', 11.90). После сохранения Пользователь изменит реестр на (1 'dvd' 'bee gees', 15.90). Тем не менее, новая регистрация будет сохранена в новой строке (или новой таблице), чтобы отслеживать все изменения, связанные с кодом продукта. 1. Кто-нибудь знает, как я могу это сделать?Сохранять историю обновлений в Java + mysql project

+0

Вы сохраняете новую запись при любых изменениях существующего? – mady

+0

Да. Новая запись для каждого изменения. –

+0

Тогда вы можете сделать одно, вы создадите еще одну таблицу для product_fields_history (то же, что и product_fields). В первый раз, когда вы вставляете в таблицу product_fields, просто вставьте одну и ту же запись в product_fields_history и при обновлении product_fields добавьте новую запись в product_fields_history. Последнее изменение будет в product_fields, и полная история будет в product_fields_history. – mady

ответ

1

Я использовал Hibernate Envers для проверки и отслеживания истории изменений в своих предыдущих проектах (проектах).

Это просто. Обновите историю изменений, просто добавив аннотацию @Audited в свой класс сущностей и извлеките историю изменений с помощью AuditReader.

Для получения более подробной информации посетите Hibernate Envers Docs.

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