MongoTemplate发现没有返回结果

时间:2013-06-14 14:51:59

标签: mongodb

MongoTemplate没有返回结果。

JSON:

{
  "_id" : ObjectId("51acf6ab0d5d46077ae12b2a"), 
  "docType" : "row",
  "value" : {
    "entity" : {
      "@id" : "1111",
      "@version" : "3434",
      "name" : "XY XY",
      "listId" : 28,
      "listCode" : "BS",
      "entityType" : "03",
      "createdDate" : "09/12/2006",
      "lastUpdateDate" : "04/20/2011",
      "source" : "CCC",
      "address1" : "XXXXXXXX",
      "city" : "CITY",
      "country" : "CO",
      "countryName" : "COUNTRY NAME"    

    }
  },
  "createdDate" : ISODate("2013-06-03T20:03:55.127Z"),
  "createdBy" : "Test"
}

查询:

queryy = new Query(Criteria.where("docType").is("row").andOperator(Criteria.where("value.entity.city").is("CITY")));

以上查询不会返回任何结果。

我错过了什么吗?请帮忙。

1 个答案:

答案 0 :(得分:0)

试试这个:

query = new Query(Criteria.where("docType").is("row")
                 .and("value.entity.city").is("CITY"));

您的代码不需要andOperator功能(因为它转换为$and)。它只需要使用and的多个条件。

并且,您可以使用query.toString()来查看查询的输出结果(并将其与您在MongoDB shell中使用的内容进行比较。