Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用“合并”创建Neo4J数据库的节点_Java_Neo4j - Fatal编程技术网

Java 使用“合并”创建Neo4J数据库的节点

Java 使用“合并”创建Neo4J数据库的节点,java,neo4j,Java,Neo4j,我是Neo4J Cypher数据库的新手,在尝试使用Merge将值写入数据库时遇到了一个奇怪的错误 GraphDatabaseService graphDb = new GraphDatabaseFactory().newEmbeddedDatabase( dbpath); ExecutionEngine engine = new ExecutionEngine( graphDb );; try (Transaction tx = graphDb.beginTx()){

我是Neo4J Cypher数据库的新手,在尝试使用Merge将值写入数据库时遇到了一个奇怪的错误

   GraphDatabaseService graphDb = new GraphDatabaseFactory().newEmbeddedDatabase( dbpath);
   ExecutionEngine engine = new ExecutionEngine( graphDb );;
   try (Transaction tx = graphDb.beginTx()){    
        result = engine.execute( youtubeQuery );
        tx.success();
        tx.close();
   }
代码安静地运行,当我刷新neo4j浏览器时,没有记录。我通过在Neo4J浏览器中键入来检查查询是否有效。我的dbpath用于从Neo4J数据库读取值

   GraphDatabaseService graphDb = new GraphDatabaseFactory().newEmbeddedDatabase( dbpath);
   ExecutionEngine engine = new ExecutionEngine( graphDb );;
   try (Transaction tx = graphDb.beginTx()){    
        result = engine.execute( youtubeQuery );
        tx.success();
        tx.close();
   }
dbpath:localhost:7474/db/data/cypher 浏览器:localhost:7474/explorer


这里有什么问题吗?这只是路径问题还是我在tx.success之前错过了什么?有什么建议吗?

最可能的情况是,代码中使用的dbpath与浏览器指向的dbpath不同。发布服务器配置可能是个好主意,这样我们就知道数据库在哪里,并让我们知道代码中的dbpath是什么。如果它们不一样,那就来吧。是我的数据库路径,是浏览器。。。。当我试图读取数据时,dbpath起作用了。这是一个URL,而不是dbpath。如果这就是您在java代码中使用的内容,那么您可能需要检查本地文件系统;您不能像那样使用RESTful API,它实际上可能正在创建一个名为localhost的本地目录。。。或者别的什么。我不是说URL,我是说检查一下:您服务器的org.neo4j.server.database.location是什么?这就是java代码中的dbpath。此外,要使其工作,服务器不能与java代码同时运行,否则数据库将被锁定。不要添加该行-检查已经存在的设置,并找出数据库存储的位置。是的,您必须停止服务器neo4j stop not abort才能成功运行java代码。一次只能有一个进程修改数据库。