如何使用其 Java 驱动程序从 JanusGraph 获取顶点或边的数据?
How to fetch data of a a vertex or an edge from JanusGraph using its Java driver?
我正在连接到远程 JanusGraph 服务器。连接没有问题但是我看不懂 Java API.
我是 运行 一个 Java Spring HTTP 服务器。在 HTTP 响应方法中,我正在创建一个图形遍历源,如
GraphTraversalSource g = traversal().withRemote("conf/remote-graph.properties");
好像还不错。但是当我想获取有关顶点的数据时,我无法使用以下代码。
g.V(28712).next().keys()
它给出了一个空洞的回应!为什么?
如果我对 gremlin shell 做同样的事情,我就明白了。见下图
如果我在 Java 中执行 g.V(28712).valueMap(true).unfold().toList();
,我会看到一些结果。
我只想使用 Java 获取顶点或边的数据。我应该怎么做?
谢谢
默认情况下,当您使用其中一个 Gremlin 客户端连接到 Gremlin 服务器并请求一个顶点时,您得到的是一个参考顶点。参考顶点仅包含 ID 和标签。要获得一些属性,您需要使用 valueMap
、elementMap
、project
等来包含它们。或者,您可以将 Gremlin 服务器配置为 return 所有属性。以这种方式设置默认值以减少发送回客户端的数据量。
请参阅文档了解更多详情。
https://tinkerpop.apache.org/docs/current/reference/#gremlin-applications
https://tinkerpop.apache.org/docs/current/reference/#_properties_of_elements
在该文档中有一个 link 到 post 关于为什么做出决定。为方便起见,我在这里也包括 link。
我正在连接到远程 JanusGraph 服务器。连接没有问题但是我看不懂 Java API.
我是 运行 一个 Java Spring HTTP 服务器。在 HTTP 响应方法中,我正在创建一个图形遍历源,如
GraphTraversalSource g = traversal().withRemote("conf/remote-graph.properties");
好像还不错。但是当我想获取有关顶点的数据时,我无法使用以下代码。
g.V(28712).next().keys()
它给出了一个空洞的回应!为什么?
如果我对 gremlin shell 做同样的事情,我就明白了。见下图
如果我在 Java 中执行 g.V(28712).valueMap(true).unfold().toList();
,我会看到一些结果。
我只想使用 Java 获取顶点或边的数据。我应该怎么做?
谢谢
默认情况下,当您使用其中一个 Gremlin 客户端连接到 Gremlin 服务器并请求一个顶点时,您得到的是一个参考顶点。参考顶点仅包含 ID 和标签。要获得一些属性,您需要使用 valueMap
、elementMap
、project
等来包含它们。或者,您可以将 Gremlin 服务器配置为 return 所有属性。以这种方式设置默认值以减少发送回客户端的数据量。
请参阅文档了解更多详情。
https://tinkerpop.apache.org/docs/current/reference/#gremlin-applications
https://tinkerpop.apache.org/docs/current/reference/#_properties_of_elements
在该文档中有一个 link 到 post 关于为什么做出决定。为方便起见,我在这里也包括 link。