Я использую весенние данные mongodb в своем приложении. Он использует mongodb 2.6. Я хочу запросить документы коллекции по идентификатору, который mongo присваивает при вставке. Я делаю что-то вроде этого:
Query query = new Query();
String id = "542385a91f00bf7dbeae1fc7";
query.addCriteria(Criteria.where("_id").new Object(id));
template.find(query, entity.class);
Этот запрос переводится на:
{ "_id" : { "$oid" : "542385a91f00bf7dbeae1fc7"}}
Когда я выполняю то же самое на оболочке mongo, он дает ошибку:
error: {"$ err": "Can canicalize query: Неизвестный оператор BadValue: $ oid", "code": 17287}
Как я могу запросить идентификатор, используя весенние данные mongodb?
{ "_id" : { "$oid" : "542385a91f00bf7dbeae1fc7"}}
в оболочке mongo, используя{"_id":ObjectId("542385a91f00bf7dbeae1fc7")}
.