关于neo4j 3.0嵌入式的一些问题我可能会遗漏。在创建节点,设置属性并标记事务成功后,我重新打开数据库,但里面没有节点!我错过了什么?Neo4j文档非常简陋。
val graph1 = {
val graphDb = new GraphDatabaseFactory()
.newEmbeddedDatabase(new File("/opt/neo4j/deviceGraphTest" ))
val tx = graphDb.beginTx()
val node = graphDb.createNode()
node.setProperty("name", "kitchen island")
node.setProperty("bulbType", "incandescent")
tx.success()
graphDb.shutdown()
}
val graph2 = {
val graphDb2 = new GraphDatabaseFactory()
.newEmbeddedDatabase(new File("/opt/neo4j/deviceGraphTest" ))
val tx2 = graphDb2.beginTx()
val allNodes = graphDb2.getAllNodes.iterator().toList
allNodes.foreach(node => {
printNode(node)
})
}
tx.success()
之后你必须调用tx.close()
或者tx.finish()
来关闭事务。你可以试一下吗? - K.E.tx.close()
还是tx.finish()
?告诉我,然后我会写一个答案。 - K.E.