Neo4j数据建模POJO的关系



我正在将Spring Data与Neo4j一起使用,并且正在为我的模式创建POJO。在这个模式中,我有一个名为 Person 的节点,具有通常的属性、名称、姓氏等......我还有一个名为DRIVES的关系,它与另一个称为carModel的节点建立了关系:

(person)-[:DRIVES]->(carModel). 

在我的 Person 类中,我定义了关系和方法的所有属性字段和注释,如下所示:

@Relationship(type = "DRIVES", direction = Relationship.UNDIRECTED)
public CarModel carModel;

我的问题是,如果在CarModel类中我也需要定义关系?

创建一个仅在一侧声明关系的模型是完全可以的。

其原因可能是

  • 你只是不想从你的CarModel类引用到人

  • 节省CarModel保存操作的时间 - SDN无需检查相关Person是否已更改

更新

存储在 Neo4j 中的关系可以在两个方向上遍历,尽管仅在 Person 类中定义。

使用自定义密码查询,您可以按CarModel查询Person ,也可以按Person查询CarModel。

在 SDN 中使用派生查找器时,只能使用类模型中定义的方向。

最新更新