如何在 r2dbc 的 @MappedEntity 注释中定义模式名称

How to define schema name in @MappedEntity annotation for r2dbc

我有 kotlin 和 Micronaut 应用程序连接到 postgresql,使用 r2dbc 反应式方法

r2dbc:
  datasources:
    default:
      schema-generate: NONE
      dialect: POSTGRES
      url: r2dbc:postgresql://localhost:5434/mydb
      username: postgres
      password: postgres

我在数据库 mydb 和架构 myschema 中有名为 Customer 的 table,但是在使用 @MappedEntity 时,我们只能定义 table 名称.由于 table 在 myschema 内部,应用程序抛出实体不存在

15:26:15.455 [reactor-tcp-nio-1] ERROR i.m.h.n.stream.HttpStreamsHandler - Error occurred writing stream response: relation "customer" does not exist io.r2dbc.postgresql.ExceptionFactory$PostgresqlBadGrammarException: relation "customer" does not exist

如何在 MappedEntity 注释中定义模式名称?

一种方法是,您可以使用查询参数

在url 中定义当前架构
url: r2dbc:postgresql://localhost:5434/mydb?currentSchema=myschema

您可以使用 JPA 的“@Table”作为解决方法。