1
是否有線程安全的方式來確保由框架圖創建獨特的頂點?考慮以下內容:帶框架的獨特頂點
Node n = framedGraph.addVertex(1, Node.class);
Node m = framedGraph.addVertex(1, Node.class);
System.out.println(n.equals(framedGraph.getVertex(1, Node.class)));
System.out.println(m.equals(framedGraph.getVertex(1, Node.class)));
打印true, false
。
我在找功能類似於Neo4j提供的get or create unique node功能(這是本例中的支持圖)。
順便說一句 - 有沒有辦法使用非數字ID?
Node m = framedGraph.addVertex("http://example.org", Node.class);
System.out.println(n.equals(framedGraph.getVertex("http://example.org", Node.class)));
打印false
謝謝!這解決了ID問題。但現在,當向框架圖添加頂點,然後將該頂點添加到我手動創建的索引('index.put(「term」,「foo1」,n.asVertex());')時,我得到一個異常:'com .tinkerpop.blueprints.util.wrappers.id.IdVertex不能轉換爲com.tinkerpop.blueprints.impls.neo4j.Neo4jElement'。任何方式來解決這個問題? – condit
我想你必須拆開'IdVertex'。嘗試使用'IdVertex'實例並在將它傳遞給索引之前調用'getBaseVertex'。 http://www.tinkerpop.com/docs/javadocs/blueprints/2.4.0/com/tinkerpop/blueprints/util/wrappers/id/IdVertex.html#getBaseVertex() –
Yep - '((IdVertex)n.asVertex ())。getBaseVertex()'訣竅。非常感謝。 – condit