使用java从mongodb获取数据

cfh9epnr  于 2021-07-06  发布在  Java
关注(0)|答案(0)|浏览(266)

我是mongodb的新手,目前,我面临一个关于从mongodb集合随机获取数据的问题。有时数据会被获取,有时则不是。下面是我的获取代码片段。

public JsonArray fetchDataKeyMatch(String rowKey, MongoQuery query) {
    try {
        JsonArray responseArray = new JsonArray();
        MongoCollection<Document> collection = getCollection(query.getCollectionName());
        DelayAnalyzer log = new DelayAnalyzer();
        query.searchQueryObject.append("_id", rowKey);          
        Document doc = collection.find(query.searchQueryObject).first();
        if(doc == null) {
            logger.warn("No Object found on " +rowKey );
        }else {
            logger.warn("Object found is : "+doc);
            responseArray.add(new JsonParser().parse(doc.toJson()));
        }

        return responseArray;
    } catch (Exception e) {
        logger.error(e , " : Exception : fetchRowKey : "+rowKey +" : filter : "+struct.getSearchQueryObject());
        return new JsonArray();
    }
}

我从上面的函数得到一个正确的响应,但有时我得到一个空值。mongo中没有日志,与此相关的日志文件甚至没有连接错误/丢失日志。我正在使用以下maven依赖项:

<dependency>
        <groupId>org.mongodb</groupId>
        <artifactId>mongo-java-driver</artifactId>
        <version>3.12.7</version>
</dependency>

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题