如何在使用Neo4jOperations.save()使用Spring Data Neo4j更新属性时忽略null和空值



spring-data-neo4j:4.1.2
neo4j:3.03

节点:

Person {id:1, name:"aa", cover:"1.jpg"}

类别:

@NodeEntity
public class Person{
    @GraphId
    private Long id;
    private String name;
    private String cover;
    ...
}

新对象:

Person p = new Person();
p.setId(1);
p.setName("bb");

然后更新数据:

p = neo4jOperations.save(p,0);

或:

personRepo.save(p,0); // interface extends GraphRepository<Person>

结果:

Person {id:1, name:"bb"}

问题:cover属性已被删除,因为p.cover为null。有没有一种方法可以在更新时忽略null值?

否,SDN不支持此操作。空值表示属性已从基础图中删除。

不过,您仍然可以编写自定义密码查询(如果这是您的主要用例,这将违背SDN的目的)

相关内容

  • 没有找到相关文章

最新更新