合并 session.save 上的两个节点(唯一节点)

Merge two nodes on session.save (unique nodes)

我正在尝试将一些 JSON 对象映射到 java 对象,然后将这些对象保存到我的 neo4j 数据库中。

我尝试使用简单的 neo4j-ogm 和 运行:session.save(object),但如果某些节点已经存在,它们将被复制而不是被合并。

如果我对值创建唯一约束,那么当我尝试 运行 时会出现异常:session.save(object) 如果节点已经存在。

我想知道是否有使用 neo4j-ogm 的解决方案,或者我需要添加 Spring Data Neo4J (SDN) 来解决这个问题?

从 Neo4j OGM 2.1.0 开始,您可以为此使用 @Index。 使用 @Index(unique=true, primary=true) 注释您的字段,session.save 将使用 MERGE 而不是 CREATE

请参阅文档中的 http://neo4j.com/docs/ogm-manual/current/reference/#reference_programming-model_indexing