Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package io.config;
- import java.util.Properties;
- import javax.sql.DataSource;
- import org.apache.commons.dbcp2.BasicDataSource;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.Configuration;
- import org.springframework.orm.hibernate5.HibernateTransactionManager;
- import org.springframework.orm.hibernate5.LocalSessionFactoryBean;
- import org.springframework.transaction.annotation.EnableTransactionManagement;
- @Configuration
- @EnableTransactionManagement
- public class PersistenceConfig {
- @Bean
- public DataSource getDataSource() {
- BasicDataSource dataSource = new BasicDataSource();
- dataSource.setDriverClassName("package.Driver");
- dataSource.setUrl("jdbc:mysql://localhost:3306/database?serverTimezone=UTC");
- dataSource.setUsername("user");
- dataSource.setPassword("password");
- return dataSource;
- }
- public Properties getHibernateProperties() {
- Properties properties = new Properties();
- properties.setProperty("hibernate.hbm2ddl.auto", "update");
- properties.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQLDialect");
- return properties;
- }
- @Bean
- public LocalSessionFactoryBean getSessionFactory() {
- LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean();
- sessionFactory.setDataSource(getDataSource());
- sessionFactory.setHibernateProperties(getHibernateProperties());
- sessionFactory.setPackagesToScan("package.models");
- return sessionFactory;
- }
- @Bean
- @Autowired
- public HibernateTransactionManager getTransactionManager() {
- HibernateTransactionManager transactionManager = new HibernateTransactionManager();
- transactionManager.setSessionFactory(getSessionFactory().getObject());
- return transactionManager;
- }
- }
Add Comment
Please, Sign In to add comment