猿问

如何从OResultSet获取JAVA对象

我有以下代码。问题是我无法找到有关如何将OResult提取/广播到我的Java类型并获取pojo的任何文档。


OrientDBObject orientDBObject;

try (ODatabaseObject databaseObjectInner = orientDBObject.open(dbName,     username, password)) {

    specFromDB = getEntitySpecInt3(databaseObjectInner, objectId, rid);

    try (OResultSet resultSet = databaseObject.query(queryByRid)) {

        if (!resultSet.hasNext()) {

            return null;

        }


        Object specObj = resultSet.next();


        // how to cast properly?

        return (EntitySpec) specObj;

        }

    }

如何从OResult强制转换或获取对象?


ITMISS
浏览 201回答 1
1回答

ABOUTYOU

在OrientDB v 3.0中,有两种方法可以做到这一点。最简单的一种:只使用db.objectQuery()而不是db.query(),它只返回POJO。第二种方法是从OResult中提取OIdentifiable,然后db.getUserObjectByRecord()将其转换为POJO:OResult item = resultSet.next();OIdentifiable doc = item.toElement();Object pojo = db.getUserObjectByRecord(doc, null);
随时随地看视频慕课网APP

相关分类

Java
我要回答