Вопрос проверяет понимание стандартного API JPA и причин отказа от привязки к конкретной реализации.
Короткий ответ
EntityManager — это интерфейс из спецификации JPA, а Session — интерфейс Hibernate. JPA использует EntityManager, чтобы код не зависел от конкретного ORM-провайдера. Это повышает переносимость и стандартизацию. Под капотом Hibernate всё равно использует Session. EntityManager — это абстракция над конкретной реализацией.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.