首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Quarkus:命名数据源、多租户和持久性单元

问Quarkus:命名数据源、多租户和持久性单元
EN

Stack Overflow用户
提问于 2020-12-11 00:46:18
回答 1查看 364关注 0票数 1

我有一个具有2个数据源的项目,一个主数据源和一个备用数据源。我已经将这些添加到了applications.properties中,并且我正在使用数据库多租户方法。我有一个更改活动租户的自定义TenantResolver实现,并且我定义的唯一实体都在外部模块中。

问题很简单:保存到我的两个数据源都很好,但是为了启动应用程序,我必须包括一个虚拟数据源:

代码语言:javascript
复制
quarkus.datasource.db-kind=h2
quarkus.datasource.jdbc.url=dummy

在属性文件中。否则,我会得到错误:默认数据源未配置,但持久性单元'‘使用它。我使用的实际数据源的定义如下:

代码语言:javascript
复制
quarkus.datasource.primary.jdbc.url=jdbc:postgresql://...
quarkus.datasource.secondary.jdbc.url=jdbc:postgresql://...

保存到它们上就很好了。

所以问题是:我应该如何配置我的应用程序,使我不必包含这个虚拟数据源来避免持久化单元错误?

下面是整个属性文件:

代码语言:javascript
复制
# Enable DATABASE approach
quarkus.hibernate-orm.multitenant=DATABASE

quarkus.datasource.db-kind=h2
quarkus.datasource.jdbc.url=dummy

# Primary tenant
quarkus.datasource.primary.db-kind=postgresql
quarkus.datasource.primary.username=reportinguser
quarkus.datasource.primary.password=pw123
quarkus.datasource.primary.jdbc.url=jdbc:postgresql://localhost:5432/reportingdb1

# Secondary tenant
quarkus.datasource.secondary.db-kind=postgresql
quarkus.datasource.secondary.username=reportinguser2
quarkus.datasource.secondary.password=password
quarkus.datasource.secondary.jdbc.url=jdbc:postgresql://localhost:5432/reportingdb1
EN

回答 1

Stack Overflow用户

发布于 2021-04-02 01:45:51

我也有和你一样的问题。您可以添加以下行以指定默认数据源quarkus.hibernate-orm.datasource=primary

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65238757

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档