在spring-data-jdbc中是否有@BatchSize的等价物

问题描述 投票:1回答:1

嗨,我使用spring数据来映射我的实体和存储库。映射非常简单:

public class Car {

   Set<Part> parts;
}

public class Part {

} 

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

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

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

Select from Part where car_id = ?

当相关部分被提取时,我的问题就开始了。它似乎是逐个取出它们。 Spring数据中是否有jdbc等同于hibernate中的批量提取?

如果答案是否定的,那么有一些相对简单的方法来实现它吗?

java jdbc spring-jdbc jdbctemplate spring-data-jdbc
1个回答
1
投票

不幸的是,答案是对现在这两个问题的简短回答是“不”。

如果您想实现批量选择,那么您需要做的就是提出

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

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.