spring-data-jdbc 中是不是有相当于@BatchSize

Posted

技术标签:

【中文标题】spring-data-jdbc 中是不是有相当于@BatchSize【英文标题】:Is there equivalent of @BatchSize in spring-data-jdbcspring-data-jdbc 中是否有相当于@BatchSize 【发布时间】:2019-03-25 17:32:43 【问题描述】:

您好,我使用 spring 数据来映射我的实体和存储库。映射很简单:

public class Car 

   Set<Part> parts;


public class Part 

 

我使用 spring 数据存储库的 findAllByIds(Iterable) 接口。它会生成一个很好的 sql,格式如下:

select from CAR where id in (?, ?, ?, ?)

对于每辆 Car,它只执行一个 SQL。

Select from Part where car_id = ?

我的问题是在获取相关部分时开始的。它似乎正在一一获取它们。 spring data jdbc 中是否有与 hibernate 中的批量获取等价的东西?

如果分析器是否定的,是否有一些相对简单的方法来实现它?

【问题讨论】:

【参考方案1】:

很遗憾,目前对这两个问题的回答都是“否”。

如果你想为选择实现批处理,你需要做的就是想出

a) DataAccessStrategy 的新实现,它基本上实现了所有 CRUD 功能,和/或

b) 新的EntityRowMapperResultSet 行转换为实体。

如果要执行不同的 SQL 语句,则需要第一个。 如果您认为更改后续 SQL 就足够了,则第二个。

有 issues around batching that you might want to track 或者如果您正在寻找的确切变体不存在,请随意创建另一个。

【讨论】:

以上是关于spring-data-jdbc 中是不是有相当于@BatchSize的主要内容,如果未能解决你的问题,请参考以下文章

iOS 中是不是有相当于 Android 旋转矢量的功能?

iOS中是不是有任何相当于Android的服务?

TFS 中是不是有相当于 Cloak 的 git? [复制]

MySQL中是不是有相当于Oracle的NVL的功能?

在 Eclipse 中是不是有相当于“添加现有文件”(到项目)?

hdfs中是不是有相当于`pwd`的东西?