這是怎麼了,我終於做到:
private IndexedContainer getTradParameters(int id){
IndexedContainer container = new IndexedContainer();
container.addContainerProperty("name", String.class, null);
try {
Document doc = Jsoup.connect("http://10.0.0.1:7474/db/data/node/"+id+"/").get();
Elements properties = doc.select("th");
for(int index = 0; index < properties.size(); index++){
String parameter = properties.get(index).text();
Item item = container.addItem(index);
item.getItemProperty("name").setValue(parameter);
}
} catch (IOException e) {
e.printStackTrace();
}
return container;
}
其中ID參數由該返回:
match (t:Translation) return id(t)
我打電話getTradParameters()符合我的要求的每一個迭代,然後我有一個帶有我節點所有參數名稱的容器。
最後一部分是調用這個函數:
private String getTradRequest(String pays){
String request = "match (n:Translation{trad_country:\""+pays+"\"}) return id(n) as id";
QueryResult <Map<String,Object>>result = engine.query(request, Collections.EMPTY_MAP);
Iterator<Map<String, Object>> iterator=result.iterator();
Map<String,Object> row = iterator.next();
int id = Integer.valueOf(row.get("id").toString());
try {
Document doc = Jsoup.connect("http://10.0.0.1:7474/db/data/node/"+id+"/").get();
Elements properties = doc.select("th");
for(int index = 0; index < properties.size(); index++){
String parameter = properties.get(index).text();
request = request + ",n."+parameter;
}
} catch (IOException e) {
e.printStackTrace();
}
return request;
}
要創建我的大Cypher支架的要求得到所有我需要我的某個節點的屬性,然後我只需要得到答案,並把它們存儲在一個容器,使用vaadin將其顯示在表中。
你的答案似乎很好,但我不知道如何使用http端點,我對這個問題有你的答案相同的問題:http://stackoverflow.com/questions/26175969/neo4j-partial- dump-with-cypher-in-java 我在java中找到了一個解決方案,會在我完成所有代碼時發佈它 – Supamiu 2014-10-09 12:30:07