2012-01-29 103 views
1

我最近开始探索图形数据库,并且我决定使用neo4j进行更多的工作。我知道neo4j DB中的节点和边是任意的,并且可以将一个或多个属性(键值对,其中的值必须仅为基元类型)分配给节点和关系。自定义类作为neo4j中节点和关系的对象

有没有办法让我自己的类的对象作为NODES和EDGES,以便节点和边缘的proprities被封装在对象本身?

+0

欢迎SO!下面的答案解决了您的问题,请点击答案旁边的复选标记将其标记为已接受。 – 2012-10-09 09:50:08

回答

3

你是指一种对象图映射的方式?

您可以查看Spring Data Neo4j或其他映射方法,如jo4neoTinkerPop Frames

从春数据的Neo4j为例

@NodeEntity class Person { 
    @GraphId Long id; 
    String name; 

    Person spouse; 
    @RelatedTo 
    Set<Person> friends; 

    @Query("start me = node({self}) match me-[:friends]->friends-[:friends]->foaf return foaf") 
    Set<Person> friendsOfFriends; 
} 
相关问题