Advertisement
Guest User

Untitled

a guest
Feb 6th, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. 1) Init DataSource
  2. 2) Init JPA beans
  3.  
  4. 1) Init DataSource
  5. 2) Init DataSourceInitializer
  6. 3) Init JPA beans
  7.  
  8. @Configuration
  9. @EnableTransactionManagement
  10. public class DataSourceConfig {
  11.  
  12. @Primary
  13. @Bean
  14. @ConfigurationProperties(prefix = "datasource.runtime")
  15. public DataSource runtimeDataSource() {
  16. return DataSourceBuilder.create().build();
  17. }
  18. }
  19.  
  20. @Configuration
  21. @Profile(Profiles.INTEGRATION_TEST)
  22. public class DataSourceTestConfig {
  23.  
  24. @Autowired
  25. private ResourceLoader resourceLoader;
  26.  
  27. @Bean
  28. public DataSourceInitializer runtimeDataSourceInitializer(@Qualifier("runtimeDataSource") DataSource dataSource) {
  29. DataSourceInitializer initializer = new DataSourceInitializer();
  30. initializer.setDataSource(dataSource);
  31. initializer.setDatabasePopulator(new ResourceDatabasePopulator(
  32. resourceLoader.getResource("classpath:runtime/schema.sql")
  33. ));
  34. return initializer;
  35. }
  36. }
  37.  
  38. @Configuration
  39. @EnableTransactionManagement
  40. public class JpaConfig {
  41.  
  42. @Autowired
  43. private Environment environment;
  44.  
  45. @Autowired
  46. @Qualifier(value = "runtimeDataSource")
  47. private DataSource runtimeDataSource;
  48.  
  49. @Primary
  50. @Bean
  51. public LocalContainerEntityManagerFactoryBean runtimeEntityManagerFactory(EntityManagerFactoryBuilder builder) {
  52. return builder
  53. .dataSource(runtimeDataSource)
  54. .properties(hibernateSettings())
  55. .packages(
  56. "cz.adx.anx.car.cases.domain",
  57. "cz.adx.anx.car.lib.domain",
  58. "org.springframework.data.jpa.convert.threeten" // Hibernate support for Java 8 date and time classes
  59. )
  60. .persistenceUnit("runtimePersistenceUnit")
  61. .build();
  62. }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement