是否可以重新使用 GraphTraversal 对象来构建查询链?
Is it possible to re-use GraphTraversal object to build query chain?
我知道您可以这样做以在单个事务中添加多个顶点
g.addV(...).addV(...).addV(...).iterate();
但是有没有办法重新使用 GraphTraversal 对象来构造查询链,使用循环在单个事务中添加多个顶点?
这就是我想要做的
public static void addVertices(int max) {
// build the cluster
//...
//
GraphTraversalSource g = traversal().withRemote(DriverRemoteConnection.using(cluster));
GraphTraversal<Vertex, Vertex> traversal = null;
for (int j = 0; j < max; j++) {
traversal = g.addV("account").property(T.id, String.valueOf(j));
}
if (traversal != null) {
traversal.iterate();
}
}
我也试过下面提到的
for (int j = 0; j < max; j++) {
traversal = g.addV("account").property(T.id, String.valueOf(j)).asAdmin().clone();
}
但是两种方法都不行,只插入了一个顶点。
我正在使用 gremlin-java 客户端插入 AWS Neptune。
您可以一直添加到遍历,直到使用像 iterate
这样的终端步骤。例如
Traversal t = g.addV("test") ;
t.addV("another-one");
t.addV("one-more");
t.iterate();
我知道您可以这样做以在单个事务中添加多个顶点
g.addV(...).addV(...).addV(...).iterate();
但是有没有办法重新使用 GraphTraversal 对象来构造查询链,使用循环在单个事务中添加多个顶点? 这就是我想要做的
public static void addVertices(int max) {
// build the cluster
//...
//
GraphTraversalSource g = traversal().withRemote(DriverRemoteConnection.using(cluster));
GraphTraversal<Vertex, Vertex> traversal = null;
for (int j = 0; j < max; j++) {
traversal = g.addV("account").property(T.id, String.valueOf(j));
}
if (traversal != null) {
traversal.iterate();
}
}
我也试过下面提到的
for (int j = 0; j < max; j++) {
traversal = g.addV("account").property(T.id, String.valueOf(j)).asAdmin().clone();
}
但是两种方法都不行,只插入了一个顶点。
我正在使用 gremlin-java 客户端插入 AWS Neptune。
您可以一直添加到遍历,直到使用像 iterate
这样的终端步骤。例如
Traversal t = g.addV("test") ;
t.addV("another-one");
t.addV("one-more");
t.iterate();