Supponiamo di poter leggere rispettivamente la stringa JSON. Ad esempio, leggi il primo testo JSON
{ "test_id" : 1245362, "name" : "ganesh", "age" : "28", "Job" :
{"company name" : "company1", "designation" : "SSE" }
}
e assegnarlo a una variabile (String json1), il passaggio successivo è analizzarlo,
DBObject dbo = (DBObject) com.mongodb.util.JSON.parse(json1);
inserisci tutti i dbo in un elenco,
List<DBObject> list = new ArrayList<>();
list.add(dbo);
quindi salvali nel database:
new MongoClient().getDB("test").getCollection("collection").insert(list);
MODIFICA:
Nella versione più recente di MongoDB devi usare Documents invece di DBObject e i metodi per aggiungere l'oggetto ora sembrano diversi. Ecco un esempio aggiornato:
Le importazioni sono:
import com.mongodb.MongoClient;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
Il codice vorrebbe questo (riferendosi al testo sopra l'EDIT):
Document doc = Document.parse(json1);
new MongoClient().getDataBase("db").getCollection("collection").insertOne(doc);
puoi anche farlo in questo modo con l'elenco. ma poi hai bisogno
new MongoClient().getDataBase("db").getCollection("collection").insertMany(list);
Ma penso che ci sia un problema con questa soluzione. Quando digiti:
db.collection.find()
nella mongo shell per ottenere tutti gli oggetti nella raccolta, il risultato è simile al seguente:
{ "_id" : ObjectId("56a0d2ddbc7c512984be5d97"),
"test_id" : 1245362, "name" : "ganesh", "age" : "28", "Job" :
{ "company name" : "company1", "designation" : "SSE"
}
}
che non è esattamente la stessa di prima.