2014-01-17 77 views
1

我一直在尋找這方面的信息,但無濟於事。如何使用Rest API一次性創建帶有標籤的新節點?現在,我似乎可以完成這一切的唯一方法就是使用下面的代碼。如何在Neo4j 2.0中通過REST API創建帶標籤的節點

 try (Transaction tx = gd.beginTx()) { 
      Map<String, Object> props = new HashMap<>(); 
      //do stuff with props... 
      RestNode node = gd.createNode(props); 
      node.addLabel(Labels.Person); 
      log.debug("Node: username - " + node.getProperty("username") 
        + " added"); 
      tx.success(); 
     } 

當我想插入,使用這種方法的100個節點的說,我覺得我應該能在沒有額外調用做添加標籤。無論如何,我可以優化這個?

謝謝。

回答

0

底層的RestAPI(Facade)有一個addLabels()方法可以使用,但我不會推薦它。

如果您想要讀取您的寫入,交易將不起作用。

如果要插入帶有標籤和屬性的100個節點,請使用帶參數的Cypher。

這應該工作。

restQueryEngine.query("foreach (p in {names} | create (n:Person {name:name}))",   
         map("names",asList("John","Jane",...))); 
+0

非常感謝Michael ......只是在您的網絡研討會上關注Neo4j 2.0即將發佈的功能。尼斯。問題雖然...說我有一個道具列表,我想分配給一個節點集合在一個Java Map集合中,我將如何使用上面的代碼片段來討論它? – Jome

+0

另外邁克爾,我假設地圖和asList是靜態導入?我會找到哪些包? – Jome

+0

我想我已經把我的頭包裹起來了。圍繞[文檔](http://docs.neo4j.org/chunked/stable/tutorials-cypher-parameters-java.html),並與你的代碼段進行比較就可以做到。謝謝。 – Jome

相關問題