我工作的一個Spring MVC 4應用程序,這是我JPAConfig之一,我必須設定兩個不同的數據源這裏是類和數據源定義:Spring MVC的變化數據源
@Configuration
@EnableJpaRepositories(basePackageClasses = MassaContratos.class, enableDefaultTransactions = false,
entityManagerFactoryRef = "entityManagerFactory08",transactionManagerRef = "transactionManager08")
@EnableTransactionManagement
public class JPAConfig08 {
@Bean
public DataSource dataSource08() {
JndiDataSourceLookup dataSourceLookup = new JndiDataSourceLookup();
dataSourceLookup.setResourceRef(true);
return dataSourceLookup.getDataSource("jdbc/DB08");
}
@Bean
public JpaVendorAdapter jpaVendorAdapter08() {
HibernateJpaVendorAdapter adapter = new HibernateJpaVendorAdapter();
adapter.setDatabase(Database.ORACLE);
adapter.setShowSql(false);
adapter.setGenerateDdl(false);
adapter.setDatabasePlatform("org.hibernate.dialect.OracleDialect");
return adapter;
}
@Bean
public EntityManagerFactory entityManagerFactory08() {
LocalContainerEntityManagerFactoryBean factory = new LocalContainerEntityManagerFactoryBean();
factory.setDataSource(dataSource08());
factory.setJpaVendorAdapter(jpaVendorAdapter08());
factory.setPackagesToScan(MassaContrato.class.getPackage().getName());
factory.afterPropertiesSet();
return factory.getObject();
}
@Bean
public PlatformTransactionManager transactionManager08() {
JpaTransactionManager transactionManager = new JpaTransactionManager();
transactionManager.setEntityManagerFactory(entityManagerFactory08());
return transactionManager;
}
}
什麼我需要做的,我不知道該怎麼辦是......如何改變這種
dataSourceLookup.getDataSource("jdbc/DB08");
從其他數據庫CONFIGS
例如挑選:
dataSourceLookup.getDataSource("jdbc/DB08-dev");
我需要動態更改數據源。