使用java从mongodb数组中检索值

时间:2017-06-07 21:10:51

标签: java mongodb spring-data-mongodb mongo-java-driver

我正在使用mongo驱动程序3.4 v并尝试从以下记录中获取不同的状态和startDate数据:

    {
        "_id" : ObjectId("5911c47ae4b0bf49e7b22bcb"),
        "statusLog" : [
            {
                "status" : "Submitted",
                "startDate" : ISODate("2017-05-09T13:30:34.036Z"),
                "endDate" : ISODate("2017-05-09T13:37:54.777Z")
            },
            {
                "status" : "Cancelled",
                "startDate" : ISODate("2017-05-09T13:37:54.777Z")
            }
        ],
        "lastChangeDate" : ISODate("2017-05-09T13:37:54.777Z"),
        "status" : "Cancelled",
        "createdDate" : ISODate("2017-05-09T13:30:34.036Z")
    }

以下是我要做的事情:

  MongoCursor<Document> curs = col.find().iterator();
    BasicDBList sList = new BasicDBList();

    while (curs.hasNext()) {
        Document doc = curs.next();
        sList.add(doc.get("statusLog"));
        Object id = doc.get("_id"); 
    }

您能否提供任何帮助或指示如何获取statusLog下的状态和startDate。我尝试了不同的方法来获得这两个项目,但无法得到它。提前谢谢。

0 个答案:

没有答案