Может ли Hibernate OGM Persistence Provider использоваться с Spring-data-jpa?

Мне очень нравится простота весеннего хранилища данных, однако мне нужно использовать hibernate в качестве поставщика устойчивости для согласованности и нескольких других факторов. (Я использую mongodb, но не использую шаблон mongo). Мало что я заметил -

  1. HibernateJpaVendorAdapter использует "org.springframework.orm.jpa.vendor.SpringHibernateEjbPersistenceProvider"

  2. Поставщик, настроенный с помощью модуля персистентности ( ""org.hibernate.ogm.jpa.HibernateOgmPersistence"), не учитывается при создании объекта EntityManagerFactory с помощью объекта"org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean".

  3. Если для проекта сконфигурировано несколько постоянных модулей, нет очевидного способа связать постоянный модуль с хранилищем.

Вопросы:

  1. Есть ли способ использовать настроенный поставщик сохраняемости вместо поставщика по умолчанию? Поставщик по умолчанию не работает с mongodb.

  2. Есть ли способ связать репозиторий с определенной единицей персистентности?

1 ответ

Частичным решением было

  1. воплощать в жизньorg.springframework.orm.jpa.vendor.AbstractJpaVendorAdapter и вернуть экземплярorg.hibernate.ogm.jpa.HibernateOgmPersistence вgetPersistenceProvider() метод

  2. Источник jpaVendorAdapter собственность для entityManagerFactoryбоб в весеннем конфиге

Однако это все еще не работает хорошо, где есть ссылка на Pageable. Некоторое изменение дизайна может обойти проблему.

Другие вопросы по тегам