Из-за природы моего приложения в GWT я не могу напрямую использовать ObjectId в своем коде
да, если вы используете RequestFactory (и выснова использую RPC).
@ Id String id;вместо.То же самое с @Id ObjectId ID?По крайней мере, на уровне mongodb?Я имею в виду способ хранения, его формат.
отвечает ли это на ваш вопрос:
> db.foo.findOne({_id : ObjectId("4f156018ef7b8b0317a8ad18")})
{
"_id" : ObjectId("4f156018ef7b8b0317a8ad18"),
"a" : 2,
"b" : 4,
"c" : 5,
"d" : 1
}
> db.foo.findOne({_id : "4f156018ef7b8b0317a8ad18"})
null
> "4f156018ef7b8b0317a8ad18" == ObjectId("4f156018ef7b8b0317a8ad18")
true
>
Кроме того, есть ли способ получения документов на основена относительное местоположение от дать String ID или ObjectId?Как до или после определенного ObjectId?
да, например:
> db.foo.find()
{ "_id" : ObjectId("4f156018ef7b8b0317a8ad18"), "a" : 2, "b" : 4, "c" : 5, "d" : 1 }
{ "_id" : ObjectId("4f156022ef7b8b0317a8ad19"), "a" : 4, "b" : 1, "c" : 3, "d" : 2 }
{ "_id" : ObjectId("4f17e667ef7b8b0317a8ad1d"), "a" : 4, "b" : 1, "c" : 3, "d" : 2 }
> db.foo.find({_id : {$gt : ObjectId("4f156022ef7b8b0317a8ad19")}})
{ "_id" : ObjectId("4f17e667ef7b8b0317a8ad1d"), "a" : 4, "b" : 1, "c" : 3, "d" : 2 }
>