java - 如何为嵌入式 Neo4j 数据库执行 Gremlin 脚本?

标签 java neo4j gremlin

我有一个嵌入式 Neo4j 数据库,并使用 Fluent API 对其运行 Gremlin 遍历。我需要能够针对该数据库执行 Gremlin 脚本(不是 Cypher)。然而,由于对嵌入式 Neo4j 数据库的访问不是通过 Cluster 实例进行的,所以我不知道如何获取具有执行 Gremlin 脚本所需方法的 Client 对象的句柄...例如client.sumbit(查询)

如何做到这一点?

最佳答案

我认为您是说您想要针对 Neo4j 处理代码中的 Gremlin 字符串。您可以直接使用 GremlinGroovyScriptEngine。这是一个使用 TinkerGraph 而不是 Neo4j 的简单示例(显然,您可以轻松地换成 Neo4j,并且此代码将以相同的方式工作):

gremlin> bindings = new javax.script.SimpleBindings()
gremlin> bindings.put('g', TinkerFactory.createModern().traversal())
gremlin> engine = new org.apache.tinkerpop.gremlin.groovy.jsr223.GremlinGroovyScriptEngine()
==>org.apache.tinkerpop.gremlin.groovy.jsr223.GremlinGroovyScriptEngine@7b676112
gremlin> results = engine.eval("g.V(1)", bindings).toList()
==>v[1]

TinkerPop还有更高级的GremlinExecutor它包装了 GremlinGroovyScriptEngine 并提供了一些您可能会觉得有用的附加功能。

关于java - 如何为嵌入式 Neo4j 数据库执行 Gremlin 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57772451/

相关文章:

.net - 如何使用 Gremlin Cosmos DB 过滤相关对象?

Java IF 语句需要多个输入

java - Akka future list - 如何等待 future list 完成?

Neo4J 加载 CSV -> URI 不是分层的

graph - 如何使用 gremlin 在 titan 图形数据库中查找 clique?

graphql - 如何使用 GraphQL 执行 Gremlin 查询?

java - 如何在java中查找字符串中整个单词的索引

java - 如何将 generateElementProperty 设置为绑定(bind)文件中的本地属性

windows - Windows 32 位 neo4j 1.9.4 社区版安装远程连接时缺少 conf 目录

neo4j - 返回总节点数和有限集的Cypher