【发布时间】:2014-05-20 09:14:53
【问题描述】:
我的问题是,当我尝试使用 GraphRepository 的“保存”方法更新实体时,我所有未更改的字段都被重写为空值。
我只用 id 和 name 发出 PUT 请求,因为我想更改用户名,但 save 方法会自动将密码字段更改为空值。我只想更新脏值。我怎样才能做到这一点?也许有某种合并或更新方法?
我的实体类如下所示:
@NodeEntity
public class User {
@GraphId Long id;
String name;
String password;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@JsonIgnore
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
我的存储库类如下所示:
public interface UserRepository extends GraphRepository<User> {
public User findById(Long id);
}
【问题讨论】:
-
更新实体字段只需修改事务内部的值,无需调用save方法。
-
你能添加一些代码示例吗?
标签: spring spring-data spring-data-neo4j