MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jak mogę zaimportować dane do Mongodb z pliku Json za pomocą java?

Załóżmy, że możesz odczytać odpowiednio ciąg JSON. Na przykład czytasz pierwszy tekst JSON

{ "test_id" : 1245362, "name" : "ganesh", "age" : "28", "Job" : 
   {"company name" : "company1", "designation" : "SSE" } 
}

i przypisać go do zmiennej (String json1), następnym krokiem jest jej parsowanie,

DBObject dbo = (DBObject) com.mongodb.util.JSON.parse(json1);

umieść wszystkie dbo na listę,

List<DBObject> list = new ArrayList<>();
list.add(dbo);

następnie zapisz je w bazie danych:

new MongoClient().getDB("test").getCollection("collection").insert(list);

EDYCJA:

W najnowszej wersji MongoDB musisz używać dokumentów zamiast DBObject, a metody dodawania obiektu wyglądają teraz inaczej. Oto zaktualizowany przykład:

Importowane są:

import com.mongodb.MongoClient;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;

Kod powinien wyglądać tak (odnosząc się do tekstu nad EDYCJĄ):

Document doc = Document.parse(json1);
new MongoClient().getDataBase("db").getCollection("collection").insertOne(doc);

możesz to również zrobić tak, jak z listą. ale wtedy potrzebujesz

new MongoClient().getDataBase("db").getCollection("collection").insertMany(list);

Ale myślę, że z tym rozwiązaniem jest problem. Kiedy piszesz:

db.collection.find()

w powłoce mongo, aby pobrać wszystkie obiekty w kolekcji, wynik wygląda następująco:

{ "_id" : ObjectId("56a0d2ddbc7c512984be5d97"),
    "test_id" : 1245362, "name" : "ganesh", "age" : "28", "Job" :
        { "company name" : "company1", "designation" : "SSE" 
    }
}

co nie jest dokładnie takie samo jak wcześniej.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Zmień kształt dokumentów, dzieląc wartość pola

  2. Problem z przesyłaniem danych JSON (z żądaniem węzła) na serwer Express w celu zapisania w MongoDB

  3. Jak używać mongodb $group w javie?

  4. Jakie są rzeczywiste przypadki użycia bazy danych NoSQL Document Store?

  5. restart usługi sudo mongodb daje nierozpoznany błąd usługi w ubuntu 14.0.4