Встречается на собеседованиях • сегодня
Что такое Dirty Checking в Hibernate
Dirty Checking — это механизм Hibernate, который автоматически определяет изменения в сущностях и синхронизирует их с БД при коммите транзакции. Hibernate сравнивает текущее состояние сущности с её первоначальным состоянием (снимком, сделанным при загрузке).
Пример:
java
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
User user = session.get(User.class, 1L); // делается снимок состояния
user.setName("New Name"); // изменяем поле
tx.commit(); // Hibernate обнаружит изменение и выполнит UPDATE
session.close();Нюансы:
- Работает только в рамках сессии
- Требует активной транзакции
- Эффективнее, чем явные вызовы update()
- Может быть отключен через аннотацию @DynamicUpdate

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