Java mongoTemplate查找查询未返回结果

问题描述 投票:0回答:1

我在下面的查询中使用mongoTemplate查找MongoDB文档。当我使用ID搜索目标时,此操作不会返回任何结果。

Query query = new Query(Criteria.where("id").is(String.valueOf(targetId)));
mongoTemplate.findOne(query, Target.class));

但是当我使用Id以外的任何其他字段时,查询仍然有效。有人可以帮助我使用ID进行此工作。

java mongodb spring-boot mongo-java mongo-java-driver
1个回答
0
投票

我认为您需要将“ id”替换为“ _id”。在MongoDB中,id被标记为“ _id”


0
投票

这应该工作

new Query(Criteria.where("id").is(new ObjectId(targetId)));
© www.soinside.com 2019 - 2024. All rights reserved.