Встречается на собеседованиях • сегодня
В чем разница между Persistent Context и EntityManager
Persistent Context — это набор управляемых (managed) сущностей, которые отслеживаются JPA для изменений. EntityManager — это интерфейс для взаимодействия с Persistence Context, предоставляющий методы для CRUD-операций (persist(), merge(), remove() и т.д.).
Ключевые отличия:
- Persistence Context — это "контейнер" сущностей, EntityManager — API для работы с ним.
- Persistence Context может быть транзакционным (привязан к транзакции) или extended (например, в Stateful Session Beans).
- EntityManager управляет жизненным циклом сущностей внутри контекста.
Пример:
java
EntityManager em = emf.createEntityManager();
em.getTransaction().begin();
// Сущность становится managed в Persistence Context
User user = em.find(User.class, 1L);
user.setName("New Name"); // Изменение отслеживается
em.getTransaction().commit(); // Изменения синхронизируются с БД
em.close();
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы