JPA的batch_size属性在本地查询中无效

5

我正在尝试使用本地查询进行批量插入。

@Repository
public interface Repository extends CrudRepository<Entity, Integer> {

    @Modifying
    @Query(value = "INSERT INTO table_name(value) VALUES (:value)", nativeQuery = true)
    void insert(@Param("value") String value);
}

我已经在application.properties文件中添加了batch_size属性。

spring.jpa.properties.hibernate.jdbc.batch_size = 50

但是在日志中,我发现每个插入操作都是单独处理的。是否可以将批处理应用于本地查询?


你是多次调用这个本地查询吗? - undefined
是的,我正在多次调用它。 - undefined
你是否正在使用 @Transactional?也许这种方式不起作用,你可以使用 saveAll 方法来批量插入。 - undefined
1
我相信saveAll是用于实体的,但我正在使用本地查询。 - undefined
或许试着重新表达这个问题:Hibernate是否预期批量处理原生查询? - undefined
显示剩余3条评论
1个回答

5

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接