如何在SpringBoot中完全替换持久性?

时间:2017-12-04 13:47:03

标签: java spring jpa spring-boot hibernate-ogm

发现的大部分信息都在官方docs

我想完全替换JPA提供程序(使用Hibernate OGM)

一种解决方案是为事务创建一个bean,使用emf创建一个bean。

EntityManagerFactory emf = Persistence.createEntityManagerFactory( "id_from_persistence.xml");

但我真正想要的是将另一个JPA提供程序完全集成到SpringBoot中,这有可能吗?

@Bean
public LocalEntityManagerFactoryBean entityManagerFactory(){
    LocalEntityManagerFactoryBean factoryBean = new LocalEntityManagerFactoryBean();
    factoryBean.setPersistenceUnitName("id_from_persistence.xml");
    return factoryBean;
}

如果是 - 我肯定遗漏了一些东西,第一个例外是实体经理未初始化。

据我所知,我需要提供自己的org.springframework.orm.jpa.JpaVendorAdapter实现?例如,存在以下类:

 org.hibernate.ogm.jpa.impl.OgmEntityManagerFactory implements HibernateEntityManagerFactory 
  1. 要禁用哪些自动配置类?
  2. 还需要哪些手动配置?
  3. 领先于我得到了以下用于控制Spring持久性的类:

    org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean
    

0 个答案:

没有答案