java – 在Jongo中通过Object Id查找
发布时间:2020-12-15 04:10:17 所属栏目:Java 来源:网络整理
导读:我知道这个问题非常基本……我很抱歉. 我不能使用Jongo为Mongo做一个’ID by ID’. 我试过了 IteratorMongoTest all = db.getCollection("mongoTest").find("{'_id': ObjectId('5194d46bdda2de09c656b64b')}").as(MongoTest.class).iterator(); 错误: java.
我知道这个问题非常基本……我很抱歉.
我不能使用Jongo为Mongo做一个’ID by ID’. 我试过了 Iterator<MongoTest> all = db.getCollection("mongoTest").find("{'_id': ObjectId('5194d46bdda2de09c656b64b')}").as(MongoTest.class).iterator(); 错误: java.lang.IllegalArgumentException: {'_id': ObjectId('5194d46bdda2de09c656b64b')} cannot be parsed at org.jongo.query.JsonQuery.marshallQuery(JsonQuery.java:34) at org.jongo.query.JsonQuery.<init>(JsonQuery.java:27) at org.jongo.query.JsonQueryFactory.createQuery(JsonQueryFactory.java:52) at org.jongo.Find.<init>(Find.java:41) at org.jongo.MongoCollection.find(MongoCollection.java:79) at org.jongo.MongoCollection.find(MongoCollection.java:75) 我试过了 Iterator<MongoTest> all = db.getCollection("mongoTest").find(withOid(new ObjectId("5194d46bdda2de09c656b64b"))).as(MongoTest.class).iterator(); 正如在文档中一样,我甚至无法编译它……有两种可能的ObjectId类型. de.undercouch.bson4jackson.types.ObjectId; 告诉我 The constructor ObjectId(String) is undefined 如果我使用 org.bson.types.ObjectId; 它似乎工作得更好,有时 – 但它仍然告诉我withOid(ObjectId)是未定义的.这并不奇怪,究竟是什么对象应该是该函数的一部分呢? 我的问题:如何在Jongo中通过_id进行查找? 解决方法
有人帮我在其他地方找到答案,把它放在这里供后代使用
一个有效的结构是 db.getCollection("mongoTest") .find("{ _id: # }",new ObjectId("5194d46bdda2de09c656b64b")) .as(MongoTest.class); 使用org.bson.types.ObjectId 要么 db.getCollection("mongoTest") .findOne(Oid.withOid("5194d46bdda2de09c656b64b")) .as(MongoTest.class);` (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |