Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Configuration
- private static final String PROPERTY_NAME_DATABASE_DRIVER = "com.mysql.jdbc.Driver";
- private static final String PROPERTY_NAME_DATABASE_PASSWORD = "db.password";
- private static final String PROPERTY_NAME_DATABASE_URL = "db.url";
- private static final String PROPERTY_NAME_DATABASE_USERNAME = "db.username";
- private static final String PROPERTY_NAME_HIBERNATE_DIALECT = "hibernate.dialect";
- private static final String PROPERTY_NAME_HIBERNATE_SHOW_SQL = "hibernate.show_sql";
- private static final String PROPERTY_NAME_ENTITYMANAGER_PACKAGES_TO_SCAN = "entitymanager.packages.to.scan";
- @Autowired
- private Environment env;
- @Bean
- public DataSource dataSource() throws SQLException {
- System.out.println("--------------");
- System.out.println("Data Source Initialization");
- DriverManagerDataSource dataSource = new DriverManagerDataSource();
- dataSource.setDriverClassName("com.mysql.jdbc.Driver");
- dataSource.setUrl("jdbc:mysql://localhost:3306/myeventmanager");
- dataSource.setUsername("root");
- dataSource.setPassword("******");
- System.out.println("--------------");
- System.out.println("Initialized");
- System.out.println(dataSource.getConnection());
- return dataSource;
- }
- @Bean
- public LocalSessionFactoryBean sessionFactory(DataSource dataSource) {
- LocalSessionFactoryBean sessionFactoryBean = new LocalSessionFactoryBean();
- sessionFactoryBean.setDataSource(dataSource);
- sessionFactoryBean.setPackagesToScan(new String[]{"com.ruruapps.domain"});
- Properties props = new Properties();
- props.setProperty("dialect", "org.hibernate.dialect.MySQLDialect");
- sessionFactoryBean.setHibernateProperties(props);
- return sessionFactoryBean;
- }
- @Bean
- @Autowired
- public HibernateTransactionManager transactionManager(SessionFactory sessionFactory) {
- HibernateTransactionManager transactionManager = new HibernateTransactionManager();
- transactionManager.setSessionFactory(sessionFactory);
- return transactionManager;
- }
- @Bean
- public BeanPostProcessor persistenceTranslation() {
- return new PersistenceExceptionTranslationPostProcessor();
- }
- Properties hibernateProperties() {
- return new Properties() {
- {
- setProperty("hibernate.hbm2ddl.auto", env.getProperty("hibernate.hbm2ddl.auto"));
- setProperty("hibernate.dialect", env.getProperty("hibernate.dialect"));
- setProperty("hibernate.globally_quoted_identifiers", "true");
- }
- };
- }
- @Configuration
- @EnableTransactionManagement
- @ComponentScan({ "xxx.xxx.xxx" })
- @PropertySource(value = { "classpath:application.properties" })
- public class HibernateConfiguration {
- @Autowired
- private Environment environment;
- @Bean
- public LocalSessionFactoryBean sessionFactory() {
- LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean();
- sessionFactory.setDataSource(dataSource());
- sessionFactory.setPackagesToScan(new String[] { "com.ws.ppp.pojo" });
- sessionFactory.setHibernateProperties(hibernateProperties());
- return sessionFactory;
- }
- @Bean(name = "dataSource")
- public DataSource dataSource() {
- DriverManagerDataSource dataSource = new DriverManagerDataSource();
- dataSource.setDriverClassName(environment.getRequiredProperty("jdbc.driverClassName"));
- dataSource.setUrl(environment.getRequiredProperty("jdbc.url"));
- dataSource.setUsername(environment.getRequiredProperty("jdbc.username"));
- dataSource.setPassword(environment.getRequiredProperty("jdbc.password"));
- return dataSource;
- }
- private Properties hibernateProperties() {
- Properties properties = new Properties();
- properties.put("hibernate.dialect", environment.getRequiredProperty("hibernate.dialect"));
- properties.put("hibernate.show_sql", environment.getRequiredProperty("hibernate.show_sql"));
- properties.put("hibernate.format_sql", environment.getRequiredProperty("hibernate.format_sql"));
- properties.put("hibernate.hbm2ddl.auto", environment.getRequiredProperty("hibernate.automaticschema"));
- properties.put("hibernate.search.default.directory_provider",
- environment.getRequiredProperty("hibernate.search.default.directory_provider"));
- properties.put("hibernate.search.default.indexBase",
- environment.getRequiredProperty("hibernate.search.default.indexBase"));
- return properties;
- }
- @Bean
- @Autowired
- public HibernateTransactionManager transactionManager(SessionFactory s) {
- HibernateTransactionManager txManager = new HibernateTransactionManager();
- txManager.setSessionFactory(s);
- return txManager;
- }
- private Properties hibernateProperties() {
- Properties properties = new Properties();
- properties.put("hibernate.dialect", environment.getRequiredProperty("hibernate.dialect"));
- properties.put("hibernate.show_sql", environment.getRequiredProperty("hibernate.show_sql"));
- properties.put("hibernate.format_sql", environment.getRequiredProperty("hibernate.format_sql"));
- properties.put("hibernate.hbm2ddl.auto", environment.getRequiredProperty("hibernate.automaticschema"));
- properties.put("hibernate.search.default.directory_provider",
- environment.getRequiredProperty("hibernate.search.default.directory_provider"));
- properties.put("hibernate.search.default.indexBase",
- environment.getRequiredProperty("hibernate.search.default.indexBase"));
- return properties;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement