mongodb 条件查询主键_id?

Pra*_*dav 4 mongodb spring-data-mongodb

我写这样的标准查询

query.addCriteria(Criteria.where("_id").is(id)); 
Run Code Online (Sandbox Code Playgroud)

但结果{"_id":123456789123450}不是搜索结果。我需要更改什么才能使用条件查询来搜索结果_id

Deb*_*pam 6

有两种方法可以做到这一点

Query query = new Query(Criteria.where("id").is(new ObjectId(<id value>)));
Run Code Online (Sandbox Code Playgroud)

或者Spring数据MongoDB的findById

org.springframework.data.repository.CrudRepository.findById(String id);
Run Code Online (Sandbox Code Playgroud)

https://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/repository/CrudRepository.html#findById-ID-