gpt4 book ai didi

java - Spring+Hibernate+java :Connecting to multiple database after running application

转载 作者:行者123 更新时间:2023-11-30 07:32:21 25 4
gpt4 key购买 nike

如果应用程序正在运行并连接到 Database-1。通过应用程序我想将某些数据从一个数据库(可以是任何其他数据库上的Database-1)复制到另一个数据库。可以有3-4个数据库。 所有数据库的架构都完全相同可以这样做吗?我读过“AbstractRoutingDataSourcehere 。但我不想在运行时连接到数据库。它应该在运行时之后。

我的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>

最佳答案

看起来你只需要创建更多的bean,并在需要的地方注入(inject)它们,并在需要时调用它们。这不是那么聪明,但您不需要对此进行过度设计。

<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>

关于java - Spring+Hibernate+java :Connecting to multiple database after running application,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35919420/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com