在java中创建Neo4j关系

时间:2014-04-08 05:35:22

标签: java neo4j

我基于no在java类中创建独特的neo4j关系。数据库中的列值。 “Interface_Name”列的值将分配给每个关系。我的代码:

while (rs.next()){
    String rel = rs.getString("Interface_Name");
    GraphDatabaseService graphDb = new EmbeddedGraphDatabase("D://My Graph");
    Transaction tx = graphDb.beginTx();     
    try {       
        RelationshipType rel = DynamicRelationshipType.withName(rel); **//Gives error since rel is string** 
        .....
        tx.success();
    }
}

如何根据DB中的列值创建关系类型?内部while循环关系类型应根据DB值创建。

1 个答案:

答案 0 :(得分:1)

您无法在不创建节点的情况下创建关系。您需要一个起始节点和一个终端节点。另外,不要为遇到的每一列创建新的GraphDatabaseService。你的代码可能是这样的:

GraphDatabaseService graphDb = new EmbeddedGraphDatabase("D://My Graph");
while (rs.next()){
    String rel = rs.getString("Interface_Name");
    try (Transaction tx = graphDb.beginTx()) {
         RelationshipType relType = DynamicRelationshipType.withName(rel);
         graphDb.createNode().createRelationshipTo(graphDb.createNode(), relType);
         tx.success();
    }
}