В чем разница между классом Hibernate Session
и классом EntityManager
? Я знаю, что EntityManager
реализует Java Persistence API, но я не уверен, каково его отношение с Session
. Связаны ли они вообще?Разница между сеансом Hibernate и EntityManager
ответ
SessionFactory и Session являются спящими. EntityManager вызывает сессию hibernate под капотом. И если вам нужны какие-то специфические особенности, которые не доступны в EntityManager, вы можете получить сеанс по телефону:
Session session = entityManager.unwrap(Session.class);
Session
является зимует конкретное API, EntityManager
представляет собой стандартизированный API для JPA. Вы можете думать о EntityManager
как о классе адаптера, который обертывает Session
(вы даже можете получить объект Session
с объекта EntityManager
через функцию getDelegate()
).
Это не отличается от других API Java (например, JDBC является стандартным API, каждый поставщик адаптирует свой продукт к API через драйвер, который реализует стандартные функции).
Есть ли разница между ними в функциональности или они более или менее идентичны? – Alexey
Они не идентичны (функции имеют разные имена и даже разные цели, аннотации разные и т. Д.). Что такое hibernate (и каждый другой поставщик JPA) - это обеспечить объект адаптера, который создает функциональность EntityManager, вызывая собственный API спящего режима. – EmirCalabuch
- 1. Разница между сеансом и кешированием
- 2. Разница между сеансом Play Framework и сеансом PHP
- 3. В чем разница между EntityManagerFactory и EntityManager
- 4. В чем разница между EntityManager и DAO?
- 5. Разница между ObjectManager и EntityManager в Symfony2?
- 6. Разница между сеансом, HTTP-соединением?
- 7. Разница между сеансом [: еда] и cookies.permanent [: food]
- 8. В чем разница между сеансом и Cookie?
- 9. разница между сеансом истек и недействительна
- 10. Разница между диалогом и сеансом в SIP?
- 11. Spring Data JPA + Hibernate: как делиться сеансом Hibernate между потоками?
- 12. Разница между Hibernate и Hibernate JPA
- 13. разница между DAO и hibernate
- 14. сходство и разница между jpa и hibernate
- 15. Разница между EntityManagerFactory и SessionFactory?
- 16. В чем разница между приемом EntityManager JPA и кэшированием первого уровня Hibernate?
- 17. Многоразовый Hibernate EntityManager (J2SE)
- 18. Аннотации Hibernate с EntityManager
- 19. Hibernate EntityManager с getSessionFactoryGetCurrentSession()
- 20. Hibernate & EntityManager с присоединениями
- 21. Hibernate управления сеансом
- 22. Hibernate EntityManager Factory - EHCache
- 23. Hibernate: Разница между session.get и session.load
- 24. Разница между файлом сопоставления Hibernate и аннотацией
- 25. Разница между сущностью JPA и объектом Hibernate
- 26. (Hibernate) Разница между Session.close() и releaseSession (Session)
- 27. Разница между Hibernate Cascade и обратными свойствами
- 28. Hibernate - разница между аннотациями и аннотациями сообщества?
- 29. разница между шаблоном Hibernate и шаблоном JDBC
- 30. Spring Hibernate - разница между CrudRepository и SessionFactory
Достаточно ли закрыть сеанс? Закроет ли вызов сеанса разворачивание в entityManager? Должен ли я закрывать entityManager, созданный из сеанса, независимо? – Sergey