Объектно-реляционное отображение с помощью JPA, Hibernate и Spring Data JPA. Переключение между JP и Hibernate

24.06.2022 909
IBS Training Center Telegram
Подписывайтесь на наш канал в Telegram:
больше материалов экспертов, анонсы бесплатных вебинаров и задачки для IT-специалистов
Подписаться
Предположим, мы работаем с JPA и нам необходим доступ к Hibernate API. Или, наоборот, мы работаем с нативным интерфейсом Hibernate, и нам необходимо создать EntityManagerFactory из конфигурации Hibernate.

Чтобы получить SessionFactory из EntityManagerFactory, необходимо развернуть первое из второго.

Листинг 7. Получение SessionFactory из EntityManagerFactory


image (1).png

Начиная с JPA версии 2.0, мы можем получать доступ к API соответствующих реализаций. EntityManagerFactory (а также EntityManager) объявляют метод развертывания, который будет возвращать объекты, принадлежащие классам реализации JPA. Используя реализацию Hibernate, мы можем получить соответствующие объекты SessionFactory или Session.

Возможно, нас интересует обратная операция — создание EntityManagerFactory из первоначальной конфигурации Hibernate.

Листинг 8. Получение EntityManagerFactory из конфигурации Hibernate


image (1).png


  • Мы создаем новую конфигурацию Hibernate #1, затем вызываем метод конфигурации, который добавляет в конфигурацию содержимое файла по умолчанию hibernate.cfg.xml.
  • В явном виде добавляем Item как аннотированный класс #2.
  • Создаем новый хэш-массив для заполнения его существующими свойствами #3.
  • Получаем имена всех свойства из конфигурации Hibernate #4, затем добавляем из по одному в ранее созданный ассоциативный массив #5.
  • Возвращаем новый EntityManagerFactory, предоставляя ему имя блока постоянного хранения cscs и ранее созданный массив свойств #6.


Расскажи друзьям:

Как не пропустить самое интересное?
Подписывайтесь на наш ежемесячный дайджест!
Спасибо.
Вы подписаны на ежемесячный дайджест.
Пользователь только что записался на курс ""
Спасибо!
Форма отправлена успешно.