JPA实现更新操作两种方法:

第一种方法是:,通过Repository对象把实体根据ID查询出来,往查出来的实体对象进行set各个字段,通过Repository接口的save方法进行保存。这种方法不想更新的字段值全部设置为 NULL,所以慎用。

    @Override
    public User modifyUser(User user) {
        int userId = user.getId();
        User oldUser = userRepository.findById(userId);
        oldUser.setUserTitle(user.getUserTitle());
        userRepository.save(oldUser);
        return userRepository.findById(userId);
    }

第二种方法:第一种是通过@Query和@Modify注解进行更新,自己可在@Query注解的HQL或SQL片段中指定更新的字段

@Query(value = "update item set item_title=?1 ,item_desc=?2 where id=?3", nativeQuery = true)
@Modifying
public void updateById(String itemTitle, String itemDesc,Long id);