2015-10-06 54 views
2

春天數據的Neo4j(3.3.1)的早期版本,我可以查詢我的數據庫路徑,並將它們作爲Iterable<EntityPath<S,E>>這樣的:如何查詢彈簧數據neo4j 4中的路徑?

public interface ArgumentNodeRepository extends GraphRepository<ArgumentNode> { 
    @Query("START t=node({0}), r=node({1}) MATCH p=t<-[:SUPPORTED_BY|INTERPRETS*0..]-r RETURN p") 
    Iterable<EntityPath<ArgumentNode, ArgumentNode>> getPaths(long childId, long rootId); 
} 

我想遷移到4.0。 0和EntityPath類似乎已經消失。我在migration guide中沒有看到EntityPath的任何提及。我的新迴歸類型​​是什麼?

回答

3

SDN 4不支持EntityPath,但仍可以查詢路徑。 我有一個包含一個返回路徑 - 返回類型爲Iterable<Map<String, Object>>

這表示路徑的集合的Cypher支架的查詢的示例here,包含在路徑交錯節點和關係的列表中的每個路徑(節點和關係表示作爲地圖)。我如何處理路徑的一個示例是https://github.com/luanne/flavorwocky/blob/sdn/src/main/java/com/flavorwocky/service/PairingServiceImpl.java#L57

+0

列表對於類似的查詢,我用來返回'名單'但是當我只將返回類型更改爲'Iterable >'時,它返回了更多信息!我可以返回哪些其他類型的結果有不同的細節?請參考一個文件嗎? –

+0

這爲我工作。通過你的github項目的@luanne非常有助於用java處理neo4j中的路徑。謝謝 – joe