首页 > 解决方案 > 如何使用Spring数据neo4j-RX在一个节点支持多个标签

问题描述

有人可以帮助我了解如何使用 Spring data neo4j-RX JPA 来支持节点中的多个标签。

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

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

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

标签: neo4jspring-data-neo4jneo4j-ogm

解决方案


@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 实现。


推荐阅读