【发布时间】:2020-01-24 03:00:26
【问题描述】:
我有一个要求,我有一个主数据库,其中包含不同客户端数据库连接的配置。当我使用包含 JWT 的 Rest API 发布数据时,该令牌将包含客户端名称并基于客户端名称,我必须从主数据库获取客户端数据库配置并进行数据库连接并将数据插入该数据库。
我浏览过各种关于它的帖子,但找不到任何具体的例子。
目前我在项目中使用带有 Data JPA 的 Spring Boot。如果有人对 Spring JDBC Template 有任何解决方案,我已准备好将我的应用程序移入其中。
【问题讨论】:
-
正确的方向是使用
Multi-tenant,然后创建您自己的自定义Multitenant Connection Provider,以便提供/切换选择的datasource。 -
基本上这是一种多租户架构,我们从多个源/客户端获取数据,我们必须根据租户或客户端(他们自己的模式)存储数据。您可以从数据库(主数据库)中获取信息并自行创建连接,并将其保存在连接池中,并使用地图、租户作为键。当您必须插入数据时,您可以从 Map 中获取连接并插入数据。
标签: hibernate spring-boot spring-data-jpa jdbctemplate