Junior — Middle
95
Da li ste koristili svojstvo Version u Hibernate-u za kontrolu verzija prilikom kreiranja objekata?
Компаније где су питане
Brainway LTD
Одговор од АИ
sobes.tech АИ
В Hibernate свойство @Version используется для реализации механизма оптимистической блокировки, который помогает контролировать версии объектов при их обновлении в базе данных. Это предотвращает потерю данных при одновременном изменении одной и той же записи несколькими транзакциями.
Пример использования:
@Entity
public class Product {
@Id
private Long id;
private String name;
@Version
private int version;
// геттеры и сеттеры
}
При каждом обновлении объекта Hibernate автоматически увеличивает значение поля version. Если при сохранении версия в базе не совпадает с версией объекта в памяти, выбрасывается исключение OptimisticLockException, что сигнализирует о конфликте обновлений.