Die Aktualisierung (Erhöhung) einen Wert innerhalb eines sub-Dokument in MongoDB

Wenn ich eine MongoDB collection mit Dokumenten und sub-Dokumente, wie dargestellt:

Die Aktualisierung (Erhöhung) einen Wert innerhalb eines sub-Dokument in MongoDB

Und, wenn ich will, erhöht sich der "Schaden" von 1 jedes mal, wenn die Methode aufgerufen wird:

private final static void incrementCount(String docID, String subDocID) {
    BasicDBObject query = new BasicDBObject();
    query.put("_id", docID);
    query.put("items.id", subDocID);
    BasicDBObject incValue = new BasicDBObject("damage", 1); //or "items.damage" ???
    BasicDBObject intModifier = new BasicDBObject("$inc", incValue);
    badgesCollection.update(query, intModifier, false, false, WriteConcern.SAFE);
}

Frage: Schreibe ich "Schaden" oder "Elemente.Schaden" ?

  • items.damage ist der richtige Weg zu gehen. Alles wird aus der Wurzel des Dokuments
InformationsquelleAutor ikevin8me | 2012-09-21
Schreibe einen Kommentar