首页 > 解决方案 > 如何在 3.1.1 MultiModel API 中创建具有强制值的顶点

问题描述

我们正在从 Tinkerpop 2.6 迁移到 MMAPI,但可以找到创建具有强制值的顶点的方法。在 Tinkerpop 中,我们这样做:

OrientGraphFactory factory = new OrientGraphFactory(“remote:localhost/ogm-test”, “root”, “toor”).setupPool(1, 10);
OrientGraph g = factory.getTx();
OrientVertex v1 = g.addVertex(“class:SimpleVertexEx”,“svex”,“directTest”);

在 MMAPI 中:

OrientDB dbServer = new OrientDB(“remote:localhost”,OrientDBConfig.defaultConfig());
ODatabaseSession db = dbServer.open(“ogm-test”, “root”, “toor”);
db.begin();

OVertex v1 = db.newVertex(“class:SimpleVertexEx”);
v1.setProperty(“svex”,“directTest”);
v1.save();

但这在 newVertex 行失败。我们必须如何做到这一点?

标签: orientdb3.0

解决方案


我在翻译代码时出错了。在 Tinker 中,你必须把

g.addVertex(“class:SimpleVertexEx”,“svex”,“directTest”);

但是在 MMAPI 中不需要“class:”这个词。正确的说法是:

OVertex v1 = db.newVertex(“SimpleVertexEx”);

之后你得到一个顶点来填充。


推荐阅读