关于使用 @Query 和 @Modifying 进行数据修改时需要加上 @Transactional

关于使用 @Query 和 @Modifying 进行数据修改时需要加上 @Transactional_第1张图片
在执行这个update 的时候报 javax.persistence.TransactionRequiredException: Executing an update/delete query

经查询 Spring Data JPA 文档,有如下说明:大概意思就是 readOnly 默认为 true,使用 @Modifying 只覆盖事务配置,还需要使用 @Transactional ,将readOnly标志设置为 false。也就是说 @Modifying 和 @Transactional需要配合使用。
关于使用 @Query 和 @Modifying 进行数据修改时需要加上 @Transactional_第2张图片

然后加上 @Transactional 后就执行成功了(@Transactional readOnly 默认 false)。
关于使用 @Query 和 @Modifying 进行数据修改时需要加上 @Transactional_第3张图片

你可能感兴趣的:(Spring,Data,JPA,Spring,Hibernate,➤,框架技术,---,☐,Spring,---,☐,Hibernate)