orientdb - 如何加载特定类型的顶点?
问题描述
如何使用 Tinkerpop 3 Java API 加载特定类型的顶点。在 Tinkerpop 2.x 中,可以使用“@class”属性。这似乎不适用于 TP 3.x。
@Test
public void testOrientDB() {
try (OrientGraphFactory graph = new OrientGraphFactory()) {
graph.setupPool(10, 100);
try (OrientGraph tx = graph.getTx()) {
for (int e = 0; e < 10_000; e++) {
Vertex v = tx.addVertex("Person");
v.property("name", "blab" + e);
Vertex v2 = tx.addVertex("Job");
v2.property("name", "blub" + e);
}
tx.commit();
}
try (OrientGraph tx = graph.getTx()) {
System.out.println("Persons: " + tx.traversal().V().has("@class", "Person").count().next());
}
}
}
解决方案
可以使用 hasLabel 步骤来查找元素:
tx.traversal().V().hasLabel("Person").count().next()
推荐阅读
- c# - 为什么我在尝试调用 ShowStatement 方法时会收到 System.InvalidCastException?
- google-data-studio - 如何在 Data Studio 中将数据源分配给时间范围控件?
- python - 返回多个表的函数
- python - 只需 python 脚本即可使 youtube 视频无法正常工作
- javascript - 在 if 语句中,是否可以轻松地为同一个值放置多个“或”值?
- html - 用户不能点击按钮
- angular - forkJoin 取决于 Angular 中的另一个响应
- python - TypeError: 'list' 对象不可调用 - assertWarns()
- r - 用R中的逻辑从两列创建新列?
- python - pygame中的正方形碰撞检测