MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Inserir Array dentro de um objeto no MongoDB


Basicamente, você usa BasicDBObject para mapeamentos de valores-chave e BasicDBList para objetos de matriz. Para o objeto em sua pergunta, você faria isso:
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);

Existem alguns métodos de conveniência na API para tornar isso um pouco menos detalhado.

O mapeamento funciona assim:
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);