L’utilizzo di MongoDB db.collezione.rimuovere(query) in java

C’è un modo in MongoDB driver Java per chiamare il db.collection.remove(query) metodo che vedo in MongoDB shell documentazione?
Cioè, io so i criteri esatti che ho bisogno di trovare tutti i documenti che si desidera eliminare dal MongoDB, ma non riesco a trovare un modo per fare una chiamata per rimuovere i record in un solo viaggio. Tutto quello che posso capire è quello di trovare i documenti e quindi eliminarli uno ad uno.

Vedo questo
http://docs.mongodb.org/manual/reference/method/db.collection.remove/
il che implica che ci deve essere un modo per farlo, ma io non riesco a capire il Java chiamate per ottenere me che per quella chiamata.

Grazie per il vostro aiuto

OriginaleL’autore Kirby | 2013-11-21

3 Replies
  1. 8

    Per rimuovere i documenti con un age di proprietà di 25.

    MongoClient mongo = new MongoClient(new ServerAddress("localhost", 27017));
    DB db = mongo.getDB("thedb");
    DBCollection collection = db.getCollection("test");
    
    BasicDBObject query = new BasicDBObject();
    query.append("age", 25);
    
    collection.remove(query);

    DBCollection e BasicDBObject sono due delle più importanti classi in Java API.

    OriginaleL’autore joews

  2. 1

    Anche per rimuovere i valori specifici di documento è possibile utilizzare il seguente codice con Mongo Java 3.2

    Document docToDelete = new Document("Designation", "SE-1");
    objDbCollection.findOneAndUpdate(new Document("Company", "StackOverflow"), new Document("$unset", docToDelete));

    Codice di cui sopra, prima di trovare il documento avendo azienda = StackOverflow e poi unset (rimuovere) la Designazione = SE-1 chiave/valore di tale documento.

    OriginaleL’autore Hiren Savalia

  3. 1

    Aggiungere e Aggiornare Mongo

    public class App {
    public static void main(String[] args) {
    
      try {
    
    Mongo mongo = new Mongo("localhost", 27017);
    DB db = mongo.getDB("yourdb");
    
    //get a single collection
    DBCollection collection = db.getCollection("dummyColl");
    
    //insert number 1 to 10 for testing
    for (int i=1; i <= 10; i++) {
        collection.insert(new BasicDBObject().append("number", i));
    }
    
    //remove number = 1
    DBObject doc = collection.findOne(); //get first document
    collection.remove(doc);
    
    //remove number = 2
    BasicDBObject document = new BasicDBObject();
    document.put("number", 2);
    collection.remove(document);
    
    //remove number = 3
    collection.remove(new BasicDBObject().append("number", 3));
    
    //remove number > 9 , means delete number = 10
    BasicDBObject query = new BasicDBObject();
    query.put("number", new BasicDBObject("$gt", 9));
    collection.remove(query);
    
    //remove number = 4 and 5
    BasicDBObject query2 = new BasicDBObject();
    List<Integer> list = new ArrayList<Integer>();
    list.add(4);
    list.add(5);
    query2.put("number", new BasicDBObject("$in", list));
    collection.remove(query2);
    
    //print out the document
    DBCursor cursor = collection.find();
        while(cursor.hasNext()) {
             System.out.println(cursor.next());
        }
    
        collection.drop();
    
        System.out.println("Done");
    
      } catch (UnknownHostException e) {
    e.printStackTrace();
      } catch (MongoException e) {
    e.printStackTrace();
      }

    OriginaleL’autore MADHUR GUPTA

Lascia un commento