如何使用Spring数据neo4j-RX在一个节点中支持多个标签

问题描述

有人可以帮助我了解如何使用Spring数据neo4j-RX JPA在一个节点中支持多个标签

假设我在neo4j数据库中有一个以下节点

(:Person:Male {name:"ABC"])

如何使用neo4j-RX JPA将具有多个标签的上述节点转换为Java中的等效实体?

解决方法

您可以在实体的@Node批注中定义多个标签。

例如:

@Node("Person","Male")
public class MalePerson {}

另一种选择是使用继承:

@Node
public class Person {}

@Node
public class Male extends Person {}

这不适用于您的用例,但我还要在此处添加第三个选项:动态标签

@Node
public class Person {
  @DynamicLabels
  private List<String> labels; // here you would add Male
}

附带说明:Spring Data Neo4j RX(或现在的Spring Data Neo4j 6)不是JPA实现。