graphDb.shutdown()
,它说你应该在那之后删除所有引用,但有没有一种编程方式来确定图数据库的状态,看它是否关闭?
答案 0 :(得分:2)
尝试GraphDatabaseService.isAvailable(long timeout)
"使用此方法检查数据库是否处于可用状态。如果数据库当前未处于可用状态,则可以提供超时以等待它变为可用状态。 如果数据库已关闭,则会立即返回false。"
我认为超时是以毫秒为单位。
答案 1 :(得分:1)
我认为你能得到它的唯一方法就是使用反射。对于例如一个EmbeddedGraphDatabase,你可以这样得到它:
final Field life = InternalAbstractGraphDatabase.class.getDeclaredField("life");
life.setAccessible(true);
System.out.println(((LifeSupport) life.get(db)).getStatus());
答案 2 :(得分:-1)
在linux服务器控制台中,您可以使用此命令:(也可以在Windows上使用)
neo4j-community-1.9.M04/bin$ ./neo4j status
Neo4j Server is not running
在将任何更高级别的语言与REST一起使用时,您可能只想curl
或wget
实例通常运行的特定网址。如果你没有数据,你知道它已经失效了。