如何使用Spring Data Jpa进行批量更新?
我有商品实体,对于差异用户级别,有差异价格,例如
goodsId level price
1 1 10
1 2 9
1 3 8
更新商品时,我要批量更新这些价格,如下所示:
@Query(value = "update GoodsPrice set price = :price where goodsId=:goodsId and level=:level")
void batchUpdate(List<GoodsPrice> goodsPriceList);
但是会引发异常,
Caused by: java.lang.IllegalArgumentException: Name for parameter binding must not be null or empty! For named parameters you need to use @Param for query method parameters on Java versions < 8.
那么如何正确地使用Spring数据Jpa实现批量更新呢?
最佳答案
我认为根据docs,使用Spring Data JPA是不可能的。您必须查看普通的JDBC,there are a few methods regarding batch insert/updates。
但是,you can do it with Hibernate fairly easy。
关于spring-data-jpa - 如何使用Spring Data Jpa进行批量更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33462221/