使用 spring 数据在 neo4j 中重复关系
Duplicate relations in neo4j with spring data
我将 Neo4j 3.0.0 与 spring-data-neo4j(版本 4.1.1.RELEASE)和 neo4j-ogm-bolt-driver 一起使用。我想在两个节点之间多次创建相同的关系(相同类型)。
通过 GraphRepository
接口多次保持 @RelationshipEntity
只会创建一次关系。
在对此主题进行一些调查后,我找到了此处描述的解决方法:Cannot add more than one relationship between nodes in neo4j 但在我的 OGM 版本中,方法 createRelationshipBetween
似乎不再存在于 Neo4jTemplate
中。
OGM 是否有可用的解决方案,或者我是否必须使用密码查询执行重复关系的创建?
我需要在两个节点之间多次拥有相同的关系类型,因此添加一些其他的关系类型对我来说不是一个选项。
SDN 4.1/Neo4j OGM does not allow for multiple relations of the same type between two nodes。该规则的例外情况是当您想要维持 2 种关系时 - 一种是传出关系,一种是传入关系 - 这是您指定传出和传入方向的时候。
如果将关系建模为关系实体,则可以有多个关系 - 关系实体必须至少有一个 属性,并且至少一个 属性 的值必须不同于其他两个节点之间的关系。您可以考虑使用时间戳作为 属性.
Custom Cypher 可以做到这一点,但在加载实体并将其持久保存回具有同时多个关系的图形时很可能会出现问题。
我将 Neo4j 3.0.0 与 spring-data-neo4j(版本 4.1.1.RELEASE)和 neo4j-ogm-bolt-driver 一起使用。我想在两个节点之间多次创建相同的关系(相同类型)。
通过 GraphRepository
接口多次保持 @RelationshipEntity
只会创建一次关系。
在对此主题进行一些调查后,我找到了此处描述的解决方法:Cannot add more than one relationship between nodes in neo4j 但在我的 OGM 版本中,方法 createRelationshipBetween
似乎不再存在于 Neo4jTemplate
中。
OGM 是否有可用的解决方案,或者我是否必须使用密码查询执行重复关系的创建?
我需要在两个节点之间多次拥有相同的关系类型,因此添加一些其他的关系类型对我来说不是一个选项。
SDN 4.1/Neo4j OGM does not allow for multiple relations of the same type between two nodes。该规则的例外情况是当您想要维持 2 种关系时 - 一种是传出关系,一种是传入关系 - 这是您指定传出和传入方向的时候。
如果将关系建模为关系实体,则可以有多个关系 - 关系实体必须至少有一个 属性,并且至少一个 属性 的值必须不同于其他两个节点之间的关系。您可以考虑使用时间戳作为 属性.
Custom Cypher 可以做到这一点,但在加载实体并将其持久保存回具有同时多个关系的图形时很可能会出现问题。