我可以针对嵌入式JanusGraph实例执行Gremlin查询吗?

时间:2018-01-23 21:18:14

标签: java gremlin janusgraph

我知道嵌入式JanusGraph的原生Java api,但是我可以直接针对图形[在java中]执行Gremlin语法String吗?

原因是我存在当前针对独立Gremlin服务器执行的Gremlin查询。

查询是从客户端应用程序执行的,因此节省时间会很好。

1 个答案:

答案 0 :(得分:3)

为了清楚起见,“本机API”可以对其执行Gremlin,但不能作为字符串。你只需使用Gremlin Java:

graph = // make your JanusGraph instance
g = graph.traversal();
List<Vertex> vertices = g.V().toList();

但是如果你真的问你是否可以“直接对图形执行Gremlin语法字符串”那么答案就是“不”。这不像你能做到的那样:

graph = // make your JanusGraph instance
List<Vertex> vertices = graph.eval("g.V()").toList();

如果你真的需要这样做,我想你可以利用GremlinGroovyScriptEngine传递JanusGraph作为绑定,然后评估一个Gremlin字符串,除非你需要处理完全动态的Gremlin遍历,我我不确定我是否有理由这样做。