Neo4j在java中使用Apoc.load.Json加载Json

时间:2017-01-23 14:34:59

标签: java json stored-procedures neo4j cypher

我想使用Apoc程序将我的Json文件加载到neo4j服务器中,因为我使用了以下查询......

call apoc.load.json("file:///training.json") yield value Return value    

但它显示错误

  

“无法调用过程apoc.load.json:由以下原因引起:   java.lang.RuntimeException:无法读取url file:///training.json   json:\ training.json(系统找不到指定的文件)“。

预期的行为是指定的json文件将被加载到neo4j服务器。

问题是:根本没有识别URL中指定的文件。

请帮我解决此错误

2 个答案:

答案 0 :(得分:1)

call apoc.load.json("file:///training.json") yield value Return value 
对于上述查询,

将URL指定为"file:///training.json"。 Instateed of this在URL中指定完整路径名。

例如:我将名为"training.json"的json文件放在以下指定路径

  

C:\用户\ TEMP.DESKTOP9FCLQ6J.002 \文件\ Neo4j的\ default.graphdb \进口\ training.json

所以在查询中指定上面的完整路径名。而不是C://指定协议名称file:///

正确答案是:

call apoc.load.json("file:///Users\\TEMP.DESKTOP-9FCLQ6J.002\\Documents\\Neo4j\\default.graphdb\\import\\test.json") yield value 
Return value.

感谢。

答案 1 :(得分:0)

对于上述电话apoc.load.json,我在Windows 10 PC上使用反斜杠使其正常工作:

WITH "file:///Users/mukundan/Documents/Neo4j/default.graphdb/import/sudish-graph_working1.json" 
AS url
CALL apoc.load.json(url) 
YIELD value