有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

neo4j中的java复制关系与spring数据

我使用的是带有spring-data-Neo4j(版本4.1.1.RELEASE)和Neo4j ogm螺栓驱动器的Neo4j 3.0.0。我想在两个节点之间多次创建相同的关系(相同类型)

enter image description here

通过GraphRepository接口多次持久化@RelationshipEntity只会创建一次关系

在对这个主题进行一些调查之后,我发现了这里描述的解决方法:Cannot add more than one relationship between nodes in neo4j但是在我的OGM版本中,方法createRelationshipBetween似乎不再存在于Neo4jTemplate

OGM是否有任何可用的解决方案,或者我是否必须使用cypher查询执行重复关系的创建

我需要在两个节点之间多次使用相同的关系类型,因此添加其他关系类型对我来说不是一个选项


共 (1) 个答案

  1. # 1 楼答案

    SDN 4.1/Neo4j OGM does not allow for multiple relations of the same type between two nodes。该规则的例外情况是,当您想要维护两种关系时——一种是传出的,另一种是传入的——此时您将指定传出和传入的方向

    如果将关系建模为关系实体,则可以有多个关系-关系实体必须至少有一个属性,并且至少一个属性的值必须不同于两个节点之间的其他关系。可以考虑使用时间戳作为属性。

    Custom Cypher可以做到这一点,但在加载实体并将其持久化回具有多个关系的图形时,很可能会出现问题