eas*_*ong 27 java spring hibernate jpa
当你使用spring和Hibernate时,你有没有遇到过日志警告
警告o.hibernate.ejb.HibernatePersistence - HHH015016:遇到了一个弃用的javax.persistence.spi.PersistenceProvider [org.hibernate.ejb.HibernatePersistence]; 请改用[org.hibernate.jpa.HibernatePersistenceProvider].
怎么处理?谢谢你的回答.
And*_*ter 29
它应该是
org.hibernate.jpa.HibernatePersistenceProvider
看看这个.
已过时.
小智 14
如果您正在使用Spring Data JPA和Java Configuration,您将能够解决它,在Entity Manager Factory中添加以下代码:
factory.setPersistenceProvider(new HibernatePersistenceProvider());
@Bean
    public EntityManagerFactory entityManagerFactory() throws SQLException {
      HibernateJpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter();
      vendorAdapter.setGenerateDdl(true);
      vendorAdapter.setShowSql(true);
      LocalContainerEntityManagerFactoryBean factory = new LocalContainerEntityManagerFactoryBean();
      factory.setJpaVendorAdapter(vendorAdapter);
      **factory.setPersistenceProvider(new HibernatePersistenceProvider());**
      factory.setPackagesToScan("com.company.appname.persistence.domain");
      factory.setDataSource(dataSource());
      factory.setJpaProperties(hibernateProperties());
      factory.afterPropertiesSet();
      return factory.getObject();
    }
你会在这里找到一个使用Spring Data JPA的Hibernate配置的好例子:http://spring.io/guides/tutorials/data/3/
在Spring上下文中使用JPA的实体管理器时遇到此问题,在persistence.xml中使用transaction-type ="RESOURCE_LOCAL".
它并不总是一个bug.我实际配置了错误的提供程序.
我刚刚更改了persistence.xml中的提供程序
<provider>org.hibernate.ejb.HibernatePersistence</provider>
至
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
它工作正常.
请注意,包从EJB更改为JPA
对于不使用SPRING的用户:
我们可以用一个特定的Hibernate 替换标准的javax.persistence bootstrapping.
旧:
EntityManagerFactory emf = Persistence.createEntityManagerFactory(
    PERSISTENCE_UNIT, props );
新:
PersistenceProvider provider = new HibernatePersistenceProvider();
EntityManagerFactory emf = provider.createEntityManagerFactory(
   PERSISTENCE_UNIT, props);
该弃用警告现在应该走了.这个问题仍然存在于4.3.1.Final中.在5.1.0.Final中它应该是固定的.
| 归档时间: | 
 | 
| 查看次数: | 36613 次 | 
| 最近记录: |