我正在寻找在 Spring 中使用一个 DataSources 但能够从 Java 代码中切换数据库的最佳方法是什么?下面是我的两个数据源,它们转到同一个数据库服务器但不同的数据库。
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="com.sybase.jdbc3.jdbc.SybDataSource" />
<property name="url"
value="jdbc:sybase:Tds:10.20.30.40:50/DATABASE_EMS" />
<property name="username" value="userid" />
<property name="password" value="derp" />
</bean>
<bean id="dataSourceMain" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="com.sybase.jdbc3.jdbc.SybDataSource" />
<property name="url"
value="jdbc:sybase:Tds:10.20.30.40:50/DATABASE" />
<property name="username" value="userid" />
<property name="password" value="derp" />
</bean>
我将它们绑定到各自的 bean,但我正在查看我的遗留代码,用 2 个单独的 bean 实现它会非常尴尬。关于如何在需要时使用一个数据源并切换数据库有什么想法/想法吗?