Depois de atualizar a versão das bibliotecas para durar eatualizando sessão de configurações começa a dar objetos nulos. Eu tentei com configurações diferentes, mas isso pode ser melhor de todos. Você poderia ajudar e explicar o que aconteceu com a atualização?
<spring.version>4.2.5.RELEASE</spring.version>
<hibernate.version>5.1.0.Final</hibernate.version>
@Bean
public LocalSessionFactoryBean sessionFactory() {
final LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean();
sessionFactory.setDataSource(restDataSource());
sessionFactory.setPackagesToScan(new String[]{"com.project"});
sessionFactory.setHibernateProperties(hibernateProperties());
return sessionFactory;
}
@Bean
public HibernateTransactionManager transactionManager() {
HibernateTransactionManager txManager = new HibernateTransactionManager();
txManager.setSessionFactory(sessionFactory().getObject());
return txManager;
}
@Bean
public DataSource restDataSource() {
final DriverManagerDataSource dataSource = new DriverManagerDataSource(env.getProperty("jdbc.url"),
env.getProperty("jdbc.user"), env.getProperty("jdbc.pass"));
dataSource.setDriverClassName(env.getProperty("jdbc.driverClassName"));
return dataSource;
}
@Bean
public PersistenceExceptionTranslationPostProcessor exceptionTranslation() {
return new PersistenceExceptionTranslationPostProcessor();
}
final Properties hibernateProperties() {
return new Properties() {
{
setProperty("hibernate.dialect", env.getProperty("hibernate.dialect"));
setProperty("hibernate.show_sql", env.getProperty("hibernate.show_sql"));
setProperty("hibernate.current_session_context_class", "org.springframework.orm.hibernate5.SpringSessionContext");
setProperty("hibernate.implicit_naming_strategy","org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyHbmImpl");
setProperty("hibernate.format_sql","false");
setProperty("hibernate.use_sql_comments","false");
setProperty("hibernate.id.new_generator_mappings","true");
setProperty("hibernate.enable_lazy_load_no_trans","true");
setProperty("hibernate.max_fetch_depth","1");
setProperty("hibernate.default_batch_fetch_size","16");
}
};
}
Respostas:
0 para resposta № 1Você precisa ter certeza de que sua importação de LocalSessionFactoryBean
é de hibernação 5
org.springframework.orm.hibernate5.LocalSessionFactoryBean