/ / Mongo converte Documento in DBObject - java, mongodb, gridfs

Mongo converte Documento in DBObject - java, mongodb, gridfs

Ciao, devo convertire Mongo Document in DBObject (BasicDBObject).

Sto caricando un file su mongo usando GridFS e voglio impostare i metadati, che ottengo nel documento. So che Document è praticamente lo stesso di DBObject. So di poter fare qualcosa del genere:

Document doc = new Document();
BasicDBObject.parse(doc.toJson());

Ma queste prestazioni sono inutilmente pesanti?

Il metodo gridFS setMetaData() accetta solo DBObject quindi devo convertirlo.

C'è un modo migliore per farlo piuttosto che convertirlo in stringa e ritorno?

risposte:

5 per risposta № 1

Sei una specie di micro-ottimizzazione qui.

Tuttavia, poiché entrambe le classi sono implementazioni di Map, puoi semplicemente fare:

Document document = new Document();
BasicDBObject basicDBObject = new BasicDBObject(document);

Internamente questo fa a Map#putAll operazione che inserisce tutte le voci della mappa del documento nella mappa BasicDbObject.