简体   繁体   English

如何在java中用'equality'查询mongodb

[英]How to query mongodb with 'equality' in java

I have following BSON in Mongodb 我在Mongodb中关注了BSON

{
    "_id" : ObjectId("52a30bdfaaa83ba83c25c0f3"),
    "course" : {
        "course_name" : "Java EE",
        "description" : "Java Enterprise Edition"
    },
    "first_name" : "Lucy",
    "last_name" : "Hill",
    "gender" : "female"
}

I want to find all the document which has "course_name" = "Java EE". 我想找到所有包含“course_name”=“Java EE”的文档。 In java, I had tried this code but it didn't seem to be working. 在java中,我尝试过这段代码,但它似乎没有用。

DBCollection table = db.getCollection("Students"); //my Collection
BasicDBObject courseNameDBObject = new BasicDBObject() 
            .append("course", new BasicDBObject("course_name", "Java EE"));
DBCursor cursor = table.find(courseNameDBObject);
while(cursor.hasNext()){
    System.out.println(cursor.next());
}

Could anyone help me? 谁能帮助我?

DBCollection table = db.getCollection("Students"); //my Collection
BasicDBObject courseNameDBObject = new BasicDBObject("course.course_name", "Java EE") ;
DBCursor cursor = table.find(courseNameDBObject);
while(cursor.hasNext()){
    System.out.println(cursor.next());
}

You can use . 你可以用. to access fields within a sub document. 访问子文档中的字段。

Official documentation on querying 有关查询的官方文档

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM