如果应用程序正在运行并连接到数据库-1。通过应用程序,我希望将某些数据从一个数据库(可以是任何其他数据库上的Database-1 )复制到另一个数据库。可以有3-4个数据库。模式对于所有的数据库都是完全相同的。我读过关于"AbstractRoutingDataSource“这里的。但我不想在运行时不连接到数据库。应该是在运行时之后。
我的spring-config.xml包含用于JdbcTemplate的bean
<bean id="EnvJdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource">
<ref bean="envDataSource" />
</property>
</bean>我为envDataSource创建了bean (数据库1)
<bean id="envDataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"/>
<property name="url"/>
<property name="username"/>
<property name="password"/>
</bean>发布于 2016-03-10 15:23:02
似乎您只需要创建更多的bean,并在需要的地方注入它们,并在需要时调用它们。这没那么聪明,但你不需要过度设计这个。
<bean id="envDataSource1" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"/>
<property name="url"/>
<property name="username"/>
<property name="password"/>
</bean>
<bean id="envDataSource2" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"/>
<property name="url"/>
<property name="username"/>
<property name="password"/>
</bean>
<bean id="EnvJdbcTemplate1" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource">
<ref bean="envDataSource1" />
</property>
</bean>
<bean id="EnvJdbcTemplate2" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource">
<ref bean="envDataSource2" />
</property>
</bean>发布于 2016-03-10 17:19:19
Hibernate中有一个内置特性来支持多个模式/数据库。找到它,这里
https://stackoverflow.com/questions/35919420
复制相似问题