Advertisement
Guest User

Untitled

a guest
Aug 8th, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.93 KB | None | 0 0
  1. @Configuration("persistenceContext")
  2. @EnableJpaRepositories(entityManagerFactoryRef = "entityManagerFactory",
  3. transactionManagerRef = "jpaTransactionManager",
  4. basePackages = {"my.repository"})
  5. @EnableTransactionManagement
  6. public class PersistenceContext {
  7.  
  8. @Autowired
  9. private DataSourcePropertyConfig dataSourcePropertyConfig;
  10.  
  11. public BasicDataSource datasource() {
  12. final BasicDataSource dataSource = new BasicDataSource();
  13.  
  14. dataSource.setDriverClassName(dataSourcePropertyConfig.getMySqlDriverClassName());
  15. dataSource.setUsername(dataSourcePropertyConfig.getMySqlDBUsername());
  16. dataSource.setPassword(dataSourcePropertyConfig.getMySqlDBPassword());
  17. dataSource.setUrl("jdbc:mysql://<host>:<port>/<database>");
  18.  
  19. dataSource.setMaxActive(10);
  20. dataSource.setMaxIdle(5);
  21. dataSource.setInitialSize(5);
  22. dataSource.setValidationQuery("SELECT 1");
  23.  
  24. return dataSource;
  25. }
  26.  
  27. public JpaVendorAdapter jpaVendorAdapter() {
  28. final HibernateJpaVendorAdapter hibernateJpaVendorAdapter = new HibernateJpaVendorAdapter();
  29. hibernateJpaVendorAdapter.setShowSql(true);
  30. hibernateJpaVendorAdapter.setGenerateDdl(false);
  31. hibernateJpaVendorAdapter.setDatabase(Database.MYSQL);
  32. return hibernateJpaVendorAdapter;
  33. }
  34.  
  35.  
  36. @Bean(name = "entityManagerFactory")
  37. public EntityManagerFactory entityManagerFactory() {
  38. final LocalContainerEntityManagerFactoryBean entityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
  39. entityManagerFactoryBean.setDataSource(this.datasource());
  40. entityManagerFactoryBean.setJpaVendorAdapter(this.jpaVendorAdapter());
  41. entityManagerFactoryBean.setPackagesToScan("my.entity");
  42. entityManagerFactoryBean.afterPropertiesSet();
  43. return entityManagerFactoryBean.getObject();
  44. }
  45.  
  46.  
  47. @Bean(name = "jpaTransactionManager")
  48. @Primary
  49. public PlatformTransactionManager jpaTransactionManager() {
  50. return new JpaTransactionManager(entityManagerFactory());
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement