【问题标题】:Connect multiple MySql db's to application将多个 MySql 数据库连接到应用程序
【发布时间】:2019-07-07 04:33:58
【问题描述】:

我想在我的 Spring Boot 应用程序中连接多个 mysql 数据库。事情在我的应用程序中,其中一个数据库用作实体,而从其他数据库中,我正在以查询形式获取数据。所以我希望每当我编写一个自定义查询时,它应该从一个数据库中获取,而每当我使用存储库方法时,它应该使用另一个数据库。

【问题讨论】:

标签: java mysql spring spring-boot spring-mvc


【解决方案1】:

将您的 application.properties 文件更改为:

#first db
spring.datasource.url = [url]
spring.datasource.username = [username]
spring.datasource.password = [password]
spring.datasource.driverClassName = oracle.jdbc.OracleDriver

#second db ...
spring.secondDatasource.url = [url]
spring.secondDatasource.username = [username]
spring.secondDatasource.password = [password]
spring.secondDatasource.driverClassName = oracle.jdbc.OracleDriver

并更改您的配置文件,即添加以下 bean:

@Bean
@Primary
@ConfigurationProperties(prefix="spring.datasource")
public DataSource primaryDataSource() {
    return DataSourceBuilder.create().build();
}

@Bean
@ConfigurationProperties(prefix="spring.secondDatasource")
public DataSource secondaryDataSource() {
   return DataSourceBuilder.create().build();
}

【讨论】:

  • 我正在使用 activiti。所以当我尝试这个时,来自 activiti 的表在第二个数据库中创建。
  • 我将如何指定我的实体应该使用哪个数据库并查询哪个数据库?
  • 看看baeldung.com/spring-data-jpa-multiple-databases,它描述了您正在寻找的内容
猜你喜欢
  • 2011-07-28
  • 2014-11-26
  • 2014-11-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-29
相关资源
最近更新 更多