【问题标题】:Spring boot, JPA dynamic data source connectionSpring boot、JPA动态数据源连接
【发布时间】:2018-07-02 08:54:54
【问题描述】:

我是springhibernateJPA 的新手。

我用SpringBootJPA 建立了一个项目。 我有一个基础数据库,它根据客户 ID 保存不同的客户数据库名称。 因此,当启动spring boot 应用程序时,我使用JPA 存储库(直接)连接到基本数据库。

根据我在上一步中获得的数据库名称,我现在必须使用JPA 连接到新数据库以获取客户信息。

因为我事先不知道客户数据库名称,所以我在执行此操作时遇到了问题。 所有数据库都是MySQL

有人可以提出实现这一目标的最佳方法吗?

【问题讨论】:

  • 这里有一个answer 展示了一个例子

标签: java spring hibernate spring-boot jpa


【解决方案1】:

您可以尝试两种方法。

方法一:

您可以使用DataSourceBuilder 获取数据源。

DataSource dataSource = DataSourceBuilder.create()  
    .driverClassName(driver-class-name)   
    .url(env.getProperty(dataSoruceUrl).build();
Connection connection = dataSource.getConnection(username, password);

使用连接可以执行 SQL 语句。

方法二:

你可以试试 Spring 提供的 AbstractRoutingDatasource。 Here 是一个解释它的指南。

希望对你有帮助!!

【讨论】:

    猜你喜欢
    • 2018-07-22
    • 2019-12-02
    • 2022-06-12
    • 1970-01-01
    • 2016-09-03
    • 1970-01-01
    • 2022-01-11
    • 2019-08-06
    • 2020-02-11
    相关资源
    最近更新 更多