sql >> Databáze >  >> NoSQL >> MongoDB

Databáze Mongo ukládá data z mapy

Nativní typy Java (int , float , String , Date , Map, atd.) se automaticky zakóduje do správného typu BSON, takže můžete použít BasicDBObject vložte Map přímo do kolekce mongo:

// you probably want to be more specific with your generics than Object!
Map<Object,Object> map = new HashMap<Object,Object>();
map.put("1", "Department A");
map.put("2", "Department B");
collection.insert(new BasicDBObject(map));

Vypadá to však jako vaše Map ve skutečnosti nemá strukturu, kterou chcete, takže potřebujete nějaký druh mapování na požadovanou strukturu. Buď použijte základní mapování, které je zabudováno v ovladači java (zavoláním BasicDBObject.put jste na správné cestě a zde jsou nějaké další nápady), nebo použijte něco jako Morphia pro rozšířené mapování.



  1. chyba při sledování aplikace Tumblelog pomocí Flask a MongoEngine

  2. Pomalý rozsah dotazu na víceklíčový index

  3. Mongodb nemůže spustit map reduction bez js enginu

  4. Jak vynutit jedinečný vložený dokument v mongoidu