Arrays 基于Java的Mongodb复杂查询

Arrays 基于Java的Mongodb复杂查询,arrays,mongodb-java,Arrays,Mongodb Java,我是全新的mongodb,但需要用java进行一些复杂的查询 { "_id" : ObjectId("558d4887c33598835a7f5ee3"), "username" : "shree", "detail1" : "d1", "detail2" : "d2", "detail3" : "d3", "detail4" : [ {

我是全新的mongodb,但需要用java进行一些复杂的查询

{
        "_id" : ObjectId("558d4887c33598835a7f5ee3"),
        "username" : "shree",
        "detail1" : "d1",
        "detail2" : "d2",
        "detail3" : "d3",
        "detail4" : [
                      {
                       "firstname":"Mary",
                       "lastname":"Smith",
                       "zipcode":"12345"
                      },
                      {
                       "firstname":"John",
                       "lastname":"Henry",
                       "zipcode":"54624"
                      },
                      {
                        "firstname":"Jacob",
                        "lastname":"Tell",
                        "zipcode":"19283"
                       },
                       {
                        "firstname":"William",
                        "lastname":"Dirk",
                        "zipcode":"15999"
                       }
                    ],

       "detail5" : "d5",

}
现在我想要一个这样的查询

1.勾选“用户名”,如果匹配,请在“详情4”中添加更多内容

2.选中“username=shree”和“zipcode=54624”,并应返回

  {
        "_id" : ObjectId("558d4887c33598835a7f5ee3"),
        "username" : "shree",
        "detail1" : "d1",
        "detail2" : "d2",
        "detail3" : "d3",
        "detail4" : {
                       "firstname":"John",
                       "lastname":"Henry",
                       "zipcode":"54624"
                     },

       "detail5" : "d5",

}
   {
      "firstname":"William",
      "lastname":"Dirk",
      "zipcode":"15999"
   }
3.选中“username=shree”和“zipcode=15999”,并应删除

  {
        "_id" : ObjectId("558d4887c33598835a7f5ee3"),
        "username" : "shree",
        "detail1" : "d1",
        "detail2" : "d2",
        "detail3" : "d3",
        "detail4" : {
                       "firstname":"John",
                       "lastname":"Henry",
                       "zipcode":"54624"
                     },

       "detail5" : "d5",

}
   {
      "firstname":"William",
      "lastname":"Dirk",
      "zipcode":"15999"
   }
数据库应保留以下内容:

{
        "_id" : ObjectId("558d4887c33598835a7f5ee3"),
        "username" : "shree",
        "detail1" : "d1",
        "detail2" : "d2",
        "detail3" : "d3",
        "detail4" : [
                      {
                       "firstname":"Mary",
                       "lastname":"Smith",
                       "zipcode":"12345"
                      },
                      {
                       "firstname":"John",
                       "lastname":"Henry",
                       "zipcode":"54624"
                      },
                      {
                        "firstname":"Jacob",
                        "lastname":"Tell",
                        "zipcode":"19283"
                       }
                    ],

       "detail5" : "d5",

}

只使用Java代码回答,或者只需附加链接,该链接是Java

中此类查询的指南“只使用Java代码回答”。这不是这个网站的工作方式。我们是来帮助你找到答案的,不是我们自己给你答案,我们不是在给猴子编码。你试过什么了?什么不起作用?关于你的问题,你能找出什么,你在哪里(具体地说)感到困惑?@AndrewG我已经在谷歌上搜索了足够多的关于这种想法的信息,但没有得到答案,所以我请求有关答案的帮助,或者发送链接给我,让我可以研究它!!!