【问题标题】:How to write java code using mongodb query builder to retrieve a document using "_id"?如何使用 mongodb 查询生成器编写 java 代码以使用“_id”检索文档?
【发布时间】:2015-07-30 20:37:10
【问题描述】:

如何使用 mongodb QueryBuilder 将以下查询转换为 java 代码?

db.event.find({"_id":ObjectId("55aff4883e688fbea60d0698")})

【问题讨论】:

    标签: java mongodb mongodb-query mongodb-java


    【解决方案1】:

    试试这个:

    DBObject query = QueryBuilder.start("_id").is(ObjectId("55aff4883e688fbea60d0698")).get();
    

    【讨论】:

    • 给出错误“未定义类型 QuerryTest 的方法 ObjectId(String)”
    【解决方案2】:
    //set up DB
    
    //select the collection
    DBCollection coll = db.getCollection("event");
    
    //Retrieve
    DBCursor cursor = coll.find(QueryBuilder.start().put("_id")
                        .is("55aff4883e688fbea60d0698").get());
    
    while(cursor.hasNext()) {
        System.out.println(cursor.next());
    }
    

    希望它对你有用。

    【讨论】:

    • 你在输出中得到了什么?你用的是什么版本的mongodb和java?
    • 我什么也没得到,因为输出可能是由于“_id”类型是 ObjectId 而不是字符串。当我问这个问题时,我正在使用 2.0 并且最近移至 3.0,使用过滤器似乎更方便。
    • 好的,检查对象是否在数据库中。如果您发布代码,我们可以更快地进行调试。
    猜你喜欢
    • 1970-01-01
    • 2015-10-01
    • 2020-09-01
    • 2012-04-05
    • 2018-09-28
    • 1970-01-01
    • 1970-01-01
    • 2014-12-23
    • 1970-01-01
    相关资源
    最近更新 更多