Spring MongoDB返回空数组

时间:2019-02-11 07:21:39

标签: spring mongodb

我正在尝试从Collection中查找包含CropData的所有文档,其中cropName为RICE。这是由模拟人生成的模拟数据,用于测试API。

这就是我每1000份文档中的1份的样子:

{
    "_id" : {
        "ObjectId" : "5c603f99fc13ae49e8000000"
    },
    "_class" : "com.cheruvu.webapp.entity.Farmer",
    "farmerReferenceId" : "a69a63e4-bbcc-4162-9484-cfc5bb6f4647",
    "oneTimeDataEntered" : false,
    "firstName" : "Rennie",
    "phoneNumber" : "9822702624",
    "CropData" : {
        "crop" : "RICE",
        "cropName" : "RICE",
        "cropPrice" : "$74.75",
        "cropAcres" : 27.0
    },
    "loc" : {
        "type" : "Point",
        "coordinates" : [ 
            117.0, 
            -53.0
        ]
    }
}

这是我的mongoDB工作查询:

db.getCollection('Farmer').find({"CropData.crop":"RICE"})

但是,当我通过查询对象在Spring中执行相同的操作时,它在Empty Array中返回,这是我的Spring函数:

public void returnFarmerList(String cropName, BasicResponse response) {
        Query query = new Query();
        query.addCriteria(Criteria.where(Farmer.Constants.CROP_DATA).exists(true));
        query.addCriteria(Criteria.where(CropData.Constants.CROP_NAME).is(cropName));
        response.setResponse(farmerDAO.runQuery(query, Farmer.class));
    }

结果:

{
  "response":"[]"
}

0 个答案:

没有答案