姬長信(Redy)

通过Spring Data JPA执行批量更新时@Version字段…


我正在使用弹簧数据存储库,我有一个问题,我无法找到答案.我的存储库查询是:

@Modifying
@Query("UPDATE User u SET u.firstName = 'blabla' WHERE u.loginName = 'admin'")
public int test();

实体User有一个javax.persistence.Version注释字段:

 @Version
 private Long version;

当我执行查询时,版本字段不会更新,但如果不是我执行的查询:

User user = this.userRepository.findUserById(1L);
user.setFirstName("blabla");
this.userRepository.save(user);

版本字段已更新.为什么?