0
我试着编写一个服务,使用SDN 4.0.0的update(User)
函数。 函数应该看起来,它有一个用户在数据库中具有相同的ID,如果是的话,用新的覆盖这个用户。Spring Data Neo4j覆盖属性
具有延伸GraphRepository<User>
我写了下面的代码UserRepository
:
User updateUser(User user){
if(userRepository.findOne(user.getId())!=null){
user = userRepository.save(user);
return user;
}else{
//Exception handling here
}
}
我现在有这个问题,每个用户我更新保持它在数据库中的方式,因为从目前看,findOne(id)
被调用时,用户对象的所有属性都会被用户覆盖,就像它在数据库中一样。
我已经解决了这一问题,通过在带注释信息库添加existsById(Long id)
功能查询“匹配(N:用户),其中ID(N)= {0}”。
但是,我仍然感兴趣,为什么SDN覆盖与我试图获得的对象具有相同ID的对象。我假设有涉及的参考,但我不能真正看到它的优点。
了解,谢谢! – Urr4