问题标签 [spring-data-r2dbc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
369 浏览

spring-boot - 无法运行 SQL 脚本来初始化 Spring Boot 测试的测试数据

我有一个带有 webflux 和 r2dbc 的 Spring Boot 2.3 反应式应用程序。通常它在 MS Sql 数据库上运行。我希望单元测试在 H2 上运行。当根据正在使用的 application.properties 文件(主文件或测试文件)加载正确的数据库驱动程序时,我明白了这一点。但我不知道如何运行 SQL 脚本来创建模式和加载数据。

尝试以下但未成功:

  1. schema-XXX.sql、data-XXX.sql,它们与非反应式 JPA 一起工作得很好。

  2. @Sql 注解引用资源目录中的 *.sql 文件。

  3. ConnectionFactoryInitializer bean 与应用程序配置文件位于同一包中,但位于测试源树下。@Configuration 和 @Bean 使用正确,但是 bean 没有实例化。也许这就是问题所在?

日志中没有任何内容表明执行 *.sql 文件的尝试甚至失败。

谢谢你。

0 投票
2 回答
835 浏览

spring-boot - R2DBC 存储库如何与 Postgis 几何图形一起使用?

我有几个与 Spring Data JPA 一起使用的实体类。(这些实体类位于安装了 postgis 并包含几何字段的 postgres 数据库中。)

但是,当我切换到 r2dbc 时,它不起作用。任何指针将不胜感激。

错误原因:java.lang.IllegalStateException:找不到类 org.locationtech.jts.geom.Geometry 所需的标识符属性!

0 投票
1 回答
2157 浏览

java - 如何在 Spring Data R2DBC 中将一对多/一对一映射到 POJO

我正在尝试在新的响应式 Data r2dbc 中复制我在 Spring Data JPA 中使用的一些功能。我知道 r2dbc 不是一个成熟的 ORM,但想了解在 r2dbc 中复制以下场景的最佳方法是什么:

如果我使用 Spring Data JPA ,对 DoctorRepository(扩展 JpaRepository)的简单 findById 调用将为我doctor提供包含表中语言doctor_language列表和表中健康提供者列表的对象health_provider

我正在阅读有关预测的内容,但似乎无法找出在 Reactive Spring 中实现上述内容的最佳方法。任何帮助/指南/方向表示赞赏。

谢谢

0 投票
1 回答
716 浏览

spring-data-r2dbc - Difference between io.r2dbc.pool.PoolingConnectionFactoryProvider.MAX_SIZE vs ConnectionPoolConfiguration max size in r2dbc

I am trying to understand the difference between 2 configurable parameters while creating a connection pool using r2dbc-pool.

I was able to configure the connection pool with the help of the below post: Connection pool size with postgres r2dbc-pool

But wanted to understand the difference while configuring max size and initial size while creating

ConnectionFactory connectionFactory = ConnectionFactories.get(ConnectionFactoryOptions.builder() .option(DRIVER, "pool") .option(PROTOCOL, "postgresql") .option(HOST, host) .option(USER, user) .option(PASSWORD, password) .option(MAX_SIZE, 30) .option(INITIAL_SIZE, 10) .option(DATABASE, database) .build());

ConnectionPoolConfiguration configuration = ConnectionPoolConfiguration.builder(connectionFactory) .maxIdleTime(Duration.ofMinutes(30)) .initialSize(initialSize) .maxSize(maxSize) .initialSize(20) .maxCreateConnectionTime(Duration.ofSeconds(1)) .build();

0 投票
1 回答
301 浏览

spring-boot - 找不到存储库 Spring R2DBC

在我的代码中,我遇到了一个奇怪的问题,即我的一个存储库在我的控制器中没有被识别并在启动期间抛出这个错误。

com.test.pack.controller.ModulesController 中构造函数的参数 0 需要找不到类型为“com.test.pack.repository.ModuleRepository”的 bean。

这是我的控制器

这是我的存储库

impl

这是我的文件夹结构

我也在为User存储库做同样的事情并且它正在工作。但是,如果我把它@Repository("moduleRepository")放在impl课堂上,那么它就可以工作。但我不明白这个 ModuleRepository 有什么特别之处,与其他概念相同的概念不适用于这个。

0 投票
1 回答
705 浏览

spring - 对于 r2bc 中的 where 子句,我们是否可以简写方式来计算 db 中存在的行数

如果我们有一个标准定义存在,需要数据库中存在的行数,那么“数据库中是否存在针对 where 条件的 no .of 行的简写”。是 r2dbc 中的任何功能吗?

0 投票
1 回答
257 浏览

spring-webflux - 在 Spring Gateway 预过滤器中检查数据库的访问权限

我正在使用 Spring Gateway,我需要使用 DB 调用通过请求路径检查进一步的用户访问。我的存储库是这样的。

这是我当前使用自定义UsernamePasswordAuthenticationToken实现的过滤器。

但是,这里有几个问题,首先是阻塞调用。另外我不确定我需要变异exchange以返回这样的响应。无论如何使用 Spring Cloud Gateway 中的过滤器来实现这一点。

0 投票
2 回答
2873 浏览

java - 如何在 r2dbc 中建立数据库连接?

如何在 r2dbc Spring boot 项目中建立 PostgreSQL 数据库连接?

我尝试了以下配置,它连接到数据库,但没有返回任何值

应用程序属性

模型

存储库

休息控制器:

它在控制台中打印输出,但在 JSON 中,我只得到空括号{}

正确的配置方法是什么?还需要什么其他配置吗?

0 投票
2 回答
2195 浏览

spring - 如何在 r2dbc-postgresql 中使用 EnumCodec

我正在尝试使用最新版本的 r2dbc-postgresql (0.8.4) 中的 EnumCodec 失败,我想知道您是否可以帮助我。

我也使用 spring-data-r2dbc 1.1.1 版。

我从 GitHub 中获取了确切的示例,并在我的 Postgres 中创建了一个枚举类型“my_enum”,以及一个包含“name”(文本)和“value”(my_enum)的表“sample_table”。

然后我按照示例进行操作:

SQL:

Java模型:

编解码器注册:

我使用 DatabaseClient 来与数据库通信。我尝试使用 2 种方法插入:

或者:

其中 SampleTable 是:

但是我同时使用这两种方法得到了同样的错误:

列“值”的类型为 my_enum,但表达式的类型为字符变化

你能帮我理解我做错了什么,或者让我参考一些工作示例吗?我感谢您的帮助!

0 投票
3 回答
1312 浏览

java - R2dbcDataAutoConfiguration 在创建 bean 'r2dbcDatabaseClient' bean 时与 AbstractR2dbcConfiguration 冲突

需要帮忙

我越来越

quote 在类路径资源 [org/springframework/boot/autoconfigure/data/r2dbc/R2dbcDataAutoConfiguration.class] 中定义的 bean 'r2dbcDatabaseClient' 无法注册。已在类路径资源 [com/paymentservice/configurations/PaymentR2dbcConfiguration.class] 中定义了具有该名称的 bean,并且禁用了覆盖。

我在用着