Встречается на собеседованиях • сегодня
Зачем нужна @Version в JPA
Аннотация @Version в JPA используется для оптимистичной блокировки (optimistic locking). Она помогает предотвратить конфликты при одновременном изменении одной и той же сущности разными транзакциями.
Принцип работы:
- Поле с
@Versionавтоматически увеличивается при каждом обновлении сущности - Если две транзакции пытаются изменить одну запись, но имеют разное значение версии, выбрасывается
OptimisticLockException
Пример:
java
@Entity
public class Product {
@Id
private Long id;
@Version
private Long version;
// другие поля
}Преимущества:
- Не блокирует данные на уровне БД
- Простота реализации
- Подходит для высоконагруженных систем
Используется обычно с числовыми полями (Long, Integer) или с Timestamp.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы