MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Inserisci Array all'interno di un oggetto in MongoDB

Fondamentalmente usi BasicDBObject per i mapping chiave-valore e BasicDBList per gli oggetti array. Per l'oggetto nella tua domanda, faresti questo:

BasicDBList dbl = new BasicDBList();
dbl.add(new BasicDBObject("NNP",0));
dbl.add(new BasicDBObject("NN", 1));
BasicDBOBject outer=new BasicDBObject("image", "cab").append("tags", dbl);

Ci sono alcuni metodi pratici nell'API per renderlo un po' meno dettagliato.

La mappatura funziona in questo modo:

for:  {"A":1}  use: new BasicDBObject("A",1)
for: {"A":1, "B":2}  use: new BasicDBObject("A",1).append("B",2)
for: {"A":{"B":2}}  use: new BasicDBObject("A",new BasicDBObject("B",2))
for: {"A":["B","C"]} use:
        BasicDBList dbl = new BasicDBList();
        dbl.add("B");
        dbl.add("C");
         ->  new BasicDBObject("A",dbl);