H2018AppConfig.java 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. package cn.gov.customs.data.config;
  2. import org.springframework.beans.factory.annotation.Autowired;
  3. import org.springframework.beans.factory.annotation.Qualifier;
  4. import org.springframework.context.annotation.Bean;
  5. import org.springframework.context.annotation.Configuration;
  6. import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
  7. import org.springframework.orm.jpa.JpaTransactionManager;
  8. import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
  9. import org.springframework.orm.jpa.vendor.Database;
  10. import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter;
  11. import org.springframework.transaction.PlatformTransactionManager;
  12. import org.springframework.transaction.annotation.EnableTransactionManagement;
  13. import javax.sql.DataSource;
  14. /**
  15. * transactionManagerRef 事务管理工厂引用名称,对应到@Bean注解对应的方法
  16. * entityManagerFactoryRef 实体管理工厂引用名称,对应到@Bean注解对应的方法
  17. */
  18. @Configuration
  19. @EnableTransactionManagement
  20. @EnableJpaRepositories(
  21. entityManagerFactoryRef="entityManagerH2018app",
  22. transactionManagerRef="transactionManagerH2018app",
  23. basePackages= {"cn.gov.customs.data.repository.h2018app"}) //设置Repository所在位置 dao 文件的路径
  24. public class H2018AppConfig {
  25. @Autowired
  26. @Qualifier("h2018appDataSource")
  27. private DataSource h2018appDataSource;
  28. @Bean
  29. PlatformTransactionManager transactionManagerH2018app() {
  30. return new JpaTransactionManager(entityManagerH2018app().getObject());
  31. }
  32. @Bean
  33. public LocalContainerEntityManagerFactoryBean entityManagerH2018app() {
  34. HibernateJpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter();
  35. vendorAdapter.setDatabase(Database.MYSQL);
  36. vendorAdapter.setShowSql(true);
  37. LocalContainerEntityManagerFactoryBean factoryBean = new LocalContainerEntityManagerFactoryBean();
  38. factoryBean.setDataSource(h2018appDataSource);
  39. factoryBean.setJpaVendorAdapter(vendorAdapter);
  40. factoryBean.setPackagesToScan("cn.gov.customs.data.entity.h2018app*");//jpa对应的实体的位置
  41. return factoryBean;
  42. }
  43. }