2016-11-09 2 views
0

を変更するクラスとデータソースの定義です:Spring MVCのは、私は春のMVC 4アプリケーションで作業し、そしてここで私のJPAConfigの一つであるのですが、私はここでは、2つの異なるデータソースを設定する必要がデータソース

@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; 
    } 

} 

:他のDBのコンフィグ

例えば

から選択するには、この

dataSourceLookup.getDataSource("jdbc/DB08"); 

を変更する方法...私は何をする必要があるとされ、私は何をするのか分かりません

dataSourceLookup.getDataSource("jdbc/DB08-dev"); 

データソースを動的に変更する必要があります。

答えて

0

JNDIが達成しようとしているものではないので、あなたがそれを実行できるかどうかはわかりません。

JNDIは、コンテナに対して構成を延期します。そうすることで、JNDI名はどのような環境でも同じになります。コンテナの設定。 JNDI名が指すデータベースを決定します。

関連する問題