
com.aol.micro.server.spring.datasource.hibernate.HibernateConfig Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of micro-hibernate Show documentation
Show all versions of micro-hibernate Show documentation
Opinionated rest microservices
package com.aol.micro.server.spring.datasource.hibernate;
import javax.annotation.Resource;
import javax.sql.DataSource;
import org.hibernate.SessionFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.orm.hibernate5.HibernateTransactionManager;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import com.aol.micro.server.config.ConfigAccessor;
import com.aol.micro.server.spring.datasource.JdbcConfig;
@Configuration
@EnableTransactionManagement
public class HibernateConfig {
@Resource(name="mainEnv")
private JdbcConfig env;
@Resource(name="mainDataSource")
private DataSource dataSource;
@Bean
public HibernateTransactionManager transactionManager() {
HibernateTransactionManager transactionManager = new HibernateTransactionManager();
transactionManager.setSessionFactory(sessionFactory());
return transactionManager;
}
@Bean
public SessionFactory sessionFactory(){
return HibernateSessionBuilder.builder()
.packages(new ConfigAccessor().get().getDataSources().get(new ConfigAccessor().get()
.getDefaultDataSourceName()))
.env(env)
.dataSource(dataSource)
.build().sessionFactory();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy