Может ли Hibernate OGM Persistence Provider использоваться с Spring-data-jpa?
Мне очень нравится простота весеннего хранилища данных, однако мне нужно использовать hibernate в качестве поставщика устойчивости для согласованности и нескольких других факторов. (Я использую mongodb, но не использую шаблон mongo). Мало что я заметил -
HibernateJpaVendorAdapter использует "org.springframework.orm.jpa.vendor.SpringHibernateEjbPersistenceProvider"
Поставщик, настроенный с помощью модуля персистентности ( ""org.hibernate.ogm.jpa.HibernateOgmPersistence"), не учитывается при создании объекта EntityManagerFactory с помощью объекта"org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean".
Если для проекта сконфигурировано несколько постоянных модулей, нет очевидного способа связать постоянный модуль с хранилищем.
Вопросы:
Есть ли способ использовать настроенный поставщик сохраняемости вместо поставщика по умолчанию? Поставщик по умолчанию не работает с mongodb.
Есть ли способ связать репозиторий с определенной единицей персистентности?
1 ответ
Частичным решением было
воплощать в жизнь
org.springframework.orm.jpa.vendor.AbstractJpaVendorAdapter
и вернуть экземплярorg.hibernate.ogm.jpa.HibernateOgmPersistence
вgetPersistenceProvider()
методИсточник
jpaVendorAdapter
собственность дляentityManagerFactory
боб в весеннем конфиге
Однако это все еще не работает хорошо, где есть ссылка на Pageable. Некоторое изменение дизайна может обойти проблему.