Advertisement
Guest User

Untitled

a guest
Aug 11th, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.40 KB | None | 0 0
  1. @Configuration
  2.  
  3. private static final String PROPERTY_NAME_DATABASE_DRIVER = "com.mysql.jdbc.Driver";
  4. private static final String PROPERTY_NAME_DATABASE_PASSWORD = "db.password";
  5. private static final String PROPERTY_NAME_DATABASE_URL = "db.url";
  6. private static final String PROPERTY_NAME_DATABASE_USERNAME = "db.username";
  7. private static final String PROPERTY_NAME_HIBERNATE_DIALECT = "hibernate.dialect";
  8. private static final String PROPERTY_NAME_HIBERNATE_SHOW_SQL = "hibernate.show_sql";
  9. private static final String PROPERTY_NAME_ENTITYMANAGER_PACKAGES_TO_SCAN = "entitymanager.packages.to.scan";
  10.  
  11. @Autowired
  12. private Environment env;
  13.  
  14. @Bean
  15. public DataSource dataSource() throws SQLException {
  16. System.out.println("--------------");
  17. System.out.println("Data Source Initialization");
  18. DriverManagerDataSource dataSource = new DriverManagerDataSource();
  19. dataSource.setDriverClassName("com.mysql.jdbc.Driver");
  20. dataSource.setUrl("jdbc:mysql://localhost:3306/myeventmanager");
  21. dataSource.setUsername("root");
  22. dataSource.setPassword("******");
  23. System.out.println("--------------");
  24. System.out.println("Initialized");
  25. System.out.println(dataSource.getConnection());
  26. return dataSource;
  27. }
  28.  
  29. @Bean
  30. public LocalSessionFactoryBean sessionFactory(DataSource dataSource) {
  31. LocalSessionFactoryBean sessionFactoryBean = new LocalSessionFactoryBean();
  32. sessionFactoryBean.setDataSource(dataSource);
  33. sessionFactoryBean.setPackagesToScan(new String[]{"com.ruruapps.domain"});
  34. Properties props = new Properties();
  35. props.setProperty("dialect", "org.hibernate.dialect.MySQLDialect");
  36. sessionFactoryBean.setHibernateProperties(props);
  37. return sessionFactoryBean;
  38. }
  39.  
  40. @Bean
  41. @Autowired
  42. public HibernateTransactionManager transactionManager(SessionFactory sessionFactory) {
  43. HibernateTransactionManager transactionManager = new HibernateTransactionManager();
  44. transactionManager.setSessionFactory(sessionFactory);
  45.  
  46. return transactionManager;
  47. }
  48.  
  49. @Bean
  50. public BeanPostProcessor persistenceTranslation() {
  51. return new PersistenceExceptionTranslationPostProcessor();
  52. }
  53.  
  54. Properties hibernateProperties() {
  55. return new Properties() {
  56. {
  57. setProperty("hibernate.hbm2ddl.auto", env.getProperty("hibernate.hbm2ddl.auto"));
  58. setProperty("hibernate.dialect", env.getProperty("hibernate.dialect"));
  59. setProperty("hibernate.globally_quoted_identifiers", "true");
  60. }
  61. };
  62. }
  63.  
  64. @Configuration
  65. @EnableTransactionManagement
  66. @ComponentScan({ "xxx.xxx.xxx" })
  67. @PropertySource(value = { "classpath:application.properties" })
  68. public class HibernateConfiguration {
  69. @Autowired
  70. private Environment environment;
  71.  
  72. @Bean
  73. public LocalSessionFactoryBean sessionFactory() {
  74. LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean();
  75. sessionFactory.setDataSource(dataSource());
  76. sessionFactory.setPackagesToScan(new String[] { "com.ws.ppp.pojo" });
  77. sessionFactory.setHibernateProperties(hibernateProperties());
  78. return sessionFactory;
  79. }
  80.  
  81. @Bean(name = "dataSource")
  82. public DataSource dataSource() {
  83. DriverManagerDataSource dataSource = new DriverManagerDataSource();
  84. dataSource.setDriverClassName(environment.getRequiredProperty("jdbc.driverClassName"));
  85. dataSource.setUrl(environment.getRequiredProperty("jdbc.url"));
  86. dataSource.setUsername(environment.getRequiredProperty("jdbc.username"));
  87. dataSource.setPassword(environment.getRequiredProperty("jdbc.password"));
  88. return dataSource;
  89. }
  90.  
  91. private Properties hibernateProperties() {
  92. Properties properties = new Properties();
  93. properties.put("hibernate.dialect", environment.getRequiredProperty("hibernate.dialect"));
  94. properties.put("hibernate.show_sql", environment.getRequiredProperty("hibernate.show_sql"));
  95. properties.put("hibernate.format_sql", environment.getRequiredProperty("hibernate.format_sql"));
  96. properties.put("hibernate.hbm2ddl.auto", environment.getRequiredProperty("hibernate.automaticschema"));
  97. properties.put("hibernate.search.default.directory_provider",
  98. environment.getRequiredProperty("hibernate.search.default.directory_provider"));
  99. properties.put("hibernate.search.default.indexBase",
  100. environment.getRequiredProperty("hibernate.search.default.indexBase"));
  101.  
  102. return properties;
  103. }
  104.  
  105. @Bean
  106. @Autowired
  107. public HibernateTransactionManager transactionManager(SessionFactory s) {
  108. HibernateTransactionManager txManager = new HibernateTransactionManager();
  109. txManager.setSessionFactory(s);
  110. return txManager;
  111. }
  112.  
  113. private Properties hibernateProperties() {
  114. Properties properties = new Properties();
  115. properties.put("hibernate.dialect", environment.getRequiredProperty("hibernate.dialect"));
  116. properties.put("hibernate.show_sql", environment.getRequiredProperty("hibernate.show_sql"));
  117. properties.put("hibernate.format_sql", environment.getRequiredProperty("hibernate.format_sql"));
  118. properties.put("hibernate.hbm2ddl.auto", environment.getRequiredProperty("hibernate.automaticschema"));
  119. properties.put("hibernate.search.default.directory_provider",
  120. environment.getRequiredProperty("hibernate.search.default.directory_provider"));
  121. properties.put("hibernate.search.default.indexBase",
  122. environment.getRequiredProperty("hibernate.search.default.indexBase"));
  123.  
  124. return properties;
  125. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement