我获取的DBObject如下所示
{ "_id" : { "$oid" : "50c28ac1de86acf0bdfbeca0"} ,
"schedule" : { "startAt" : 1354926785198 , "endAt" : 1391155200000 , "repeatForever" : true , "interval" : 3600} , "destination" : "Storage-East"}
我想提取JSON字符串sans“_id”,以便我可以将它反序列化回我的Java对象。如果我使用以下内容,我可以删除'_id'字段,可以从JSON字符串中恢复Java对象。有没有其他优雅的方式这样做?
dbObj.removeField("_id");
String jsonString = dbObj.toString();
// Now readValue from the json string
感谢。
答案 0 :(得分:1)
不要删除后面的数据,只需使用结果投影。您只需使用find语句中的结果投影删除_id
:
//find all documents where destination equals Storage-East, but exclude _id from result set
db.inventory.find( { "destination": 'Storage-East' }, { _id:0 } )
您可以找到文档http://docs.mongodb.org/manual/core/read-operations/#result-projections。