我在下面的查询中使用mongoTemplate查找MongoDB文档。当我使用ID搜索目标时,此操作不会返回任何结果。
Query query = new Query(Criteria.where("id").is(String.valueOf(targetId)));
mongoTemplate.findOne(query, Target.class));
但是当我使用Id以外的任何其他字段时,查询仍然有效。有人可以帮助我使用ID进行此工作。
我认为您需要将“ id”替换为“ _id”。在MongoDB中,id被标记为“ _id”
这应该工作
new Query(Criteria.where("id").is(new ObjectId(targetId)));