简体   繁体   中英

mongodb java driver 3.0: how to store JSON document

Looks basic and simple: A have a JSON string and I want to store it in MongoDB as JSON document.

In java driver 2.xx I could use com.mongodb.util.JSON.parse(String jsonString) to get DBObject and then store it in collection.

In driver 3.0 JSON.parse still gives DBObject , but rest of API uses org.bson.Document class which looks as incompatible with DBObject .

How to do it in driver version 3.0?

对于Document使用parse()静态助手:

Document myDoc = Document.parse(jsonString)

For you problem, you have at least 3 solutions, lets see:

private Map<String, Object> map;

private DBObject dbObject = new BasicDBObject(map);

private Document document = Document.parse(jsonText);

The imports of objects are:

import java.util.Map;
import org.bson.Document;
import com.mongodb.DBObject;

There are a difference with Document object, by default it disconsider all null attributes when object is persisted on mongo. The same not ocorres with another two, in your configuration default not.

I hope helped you...

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM