Я использую Hibernate Envers в своем приложении для хранения данных аудита, вся информация, связанная с аудитом, хранится в таблице * _AUD правильно. Однако тип данных столбца rev во всей таблице _AUD является типом данных Integer. Я ожидаю большой тип данных int, потому что максимальный диапазон целочисленных типов данных равен 2147483647. Есть ли способ изменить тип данных на большой int?Hibernate Envers rev тип данных столбца Integer
ответ
По умолчанию реализация Envers использует тип данных Integer
для столбца REV
.
Для того, чтобы использовать тип данных Long
, вам необходимо предоставить собственный объект ревизии с соответствующими аннотациями. Ниже приведен пример, который заменит существующую реализацию по умолчанию, используя столбец BIGINT
REV
.
@Entity
@RevisionEntity
public class CustomRevisionEntity implements Serializable {
@Id
@GeneratedValue
@RevisionNumber
private Long rev;
@RevisionTimestamp
private Long timestamp;
/* provide getter/setters */
}
ПРИМЕЧАНИЕ: Все таблицы аудита будет сделать матч типа данных их REV
столбца, что типа данных используется в классе пересмотра сущности.
Существует открытая JIRA HHH-6615 перенести реализацию по умолчанию использовать Long
вместо Integer
изменений на основе; однако для этого требуется, чтобы мы рассматривали пути обновления в качестве детали реализации этой проблемы для учета существующих пользователей.
До тех пор использование пользовательского объекта ревизии для новых реализаций является обходным путем.
- 1. Hibernate Envers - Добавление исторических данных
- 2. Hibernate Envers: Инициализация Envers Proxies
- 3. Hibernate Envers исключение
- 4. Hibernate Envers: Audit @CollectionTable поле
- 5. Hibernate Envers: @Audited на подклассе
- 6. Hibernate Envers - обход отношений
- 7. Hibernate Envers - загрузка история для вложенного объекта
- 8. Hibernate Envers for Doctrine?
- 9. Hibernate Envers undo
- 10. Как использовать Hibernate Envers (@Audited) без Hibernate, генерирующих любые таблицы
- 11. Envers, PostgreSQL и TINYINT
- 12. Hibernate Envers Аудит
- 13. Hibernate Envers in Grails
- 14. OSGi Hibernate envers Support
- 15. PreUpdate in Hibernate-Envers
- 16. Hibernate Envers @NotAudited аннотация
- 17. Hibernate Envers Возврат данных к версии
- 18. Hibernate: Не удалось определить тип: Integer
- 19. Hibernate Envers - заказ RevisionEntity - как получить запись
- 20. Как запросить RevisionEntity в hibernate envers
- 21. Hibernate Envers vs Spring AOP
- 22. Hibernate envers получить журнал изменений
- 23. Hibernate envers как обновить запись удаления
- 24. Композитная таблица с Hibernate Envers
- 25. использование hibernate envers 4.2 с hibernate 3.5.5
- 26. Чтение проверенных отношений с помощью Hibernate Envers
- 27. номер магазина в поле столбца, который имеет тип данных 'integer'
- 28. Hibernate Envers Перечень исключения аудита
- 29. CDI Beans и Hibernate Envers
- 30. Envers with Hibernate Interceptors, onDelete
Разве этот столбец не используется для пересмотра одного кортежа? означает: кортеж может иметь 2147483647 ревизий, которого должно быть достаточно ... – Ben
№. Обнуляет получает номер ревизии для всей таблицы AUD из 1 порядкового номера – kenn3th