我有一个场景,需要根据某些条件首先更新一些数据库记录,然后从数据库中读取这些记录。我正在使用 CrudRepository
,在我的控制器中,我有一个服务,它使用 @Query
调用存储库方法来更新记录,然后在下一行尝试读取相同的记录,但是除非我退出该控制器方法,否则记录不会被更新。
我有一个场景,需要根据某些条件首先更新一些数据库记录,然后从数据库中读取这些记录。我正在使用 CrudRepository
,在我的控制器中,我有一个服务,它使用 @Query
调用存储库方法来更新记录,然后在下一行尝试读取相同的记录,但是除非我退出该控制器方法,否则记录不会被更新。
如果您执行一个UPDATE
语句,应该结合使用@Modifying
和@Query
。
来自文档:
@Modifying
@Query("update User u set u.firstname = ?1 where u.lastname = ?2")
int setFixedFirstnameFor(String firstname, String lastname);