我在嵌入模式下使用Neo4j的Clojure应用程序。我使用新路径调用{new GraphDatabaseFactory).newEmbeddedDatabase
。如何判断生成的GraphDatabaseService
是否是新建的/空?
Bonus问题:如果它不是新创建的,我如何读取数据库中的元数据以告诉我的系统版本是什么?如果有人不小心将路径传递给了未使用我的应用程序创建的有效Neo4j数据库,我想抛出一个Exception
。
答案 0 :(得分:1)
完全披露:我不知道clojure。
以编程方式,我没有看到确定这一点的方法,但您可以通过在调用GraphDatabaseFactory
之前检查目录是否存在来实现此目的。
对于元数据,如果您将GraphDatabaseService
转换为InternalAbstractGraphDatabase
并对其执行getConfig()
,则可以执行此操作。这将允许您访问Config
类,该类具有包含可显示版本的参数的属性映射,以及其他内容。