JPA执行update/delete语句时要显性添加事务

Posted by hualeizhang on 2023-12-18
Estimated Reading Time 1 Minutes
Words 93 In Total
Viewed Times

JPA事务问题Executing an update/delete query

当使用repository执行update语句时除了加@Query和@Modifying注解外,还需要显式地使用@Transactional注解,否则会抛出异常。
异常错误截图:
error_trace.png

解决方法

在repository中添加@Transactional注解,如下:

@Repository
public interface UserRepository extends JpaRepository<User, Long> {
    @Transactional
    @Modifying
    @Query("update User u set u.name =?1 where u.id =?2")
}

如果您喜欢此博客或发现它对您有用,则欢迎对此发表评论。 也欢迎您共享此博客,以便更多人可以参与。 如果博客中使用的图像侵犯了您的版权,请与作者联系以将其删除。 谢谢 !