我试图通过执行一个请求而不是更新每个实体来提高性能。的SQL看起来正确,并执行此方法的调用,但我没有在休眠日志中执行任何“更新”。
@Modifying
@Query("UPDATE Order x SET x.reservedByClient = :value WHERE x.tourId = :id")
public void updateReservationStatus(@Param("value") Boolean value, @Param("id") Long id);
任何提示可以在哪里看?
答案 0 :(得分:2)
修改查询应包含在事务中。尝试将@Transactional
添加到查询中。
@Modifying
@Query("UPDATE Order x SET x.reservedByClient = :value WHERE x.tourId = :id")
@Transactional
public void updateReservationStatus(@Param("value") Boolean value, @Param("id") Long id);