Встречается на собеседованиях • сегодня
Когда происходит запись нескольких сущностей в Persistence Context
При записи сущностей в Persistence Context (контекст persistence) в JPA/Hibernate есть несколько ключевых моментов:
-
При вызове
entityManager.persist(entity)сущность переходит в состояниеmanagedи становится частью контекста. -
При коммите транзакции (
entityManager.getTransaction().commit()) все изменения в управляемых сущностях синхронизируются с БД.
- При вызове
entityManager.merge(entity)сущность либо добавляется в контекст, либо обновляется, если уже существует.
Пример:
java
EntityManager em = emf.createEntityManager();
em.getTransaction().begin();
User user1 = new User("Alice"); // transient
em.persist(user1); // теперь managed
User user2 = em.find(User.class, 1L); // managed
user2.setName("Bob"); // изменения будут записаны
em.getTransaction().commit(); // синхронизация с БД
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы