sql >> Database >  >> NoSQL >> MongoDB

Hoe mongodb van groovy / grails te ondervragen?

Ervan uitgaande dat u de afhankelijkheid van het mongodb java-stuurprogramma hebt toegevoegd in de buildconfiguratie en uw afhankelijkheden hebt vernieuwd.

Maak een graalservice met de naam MongoService.groovy en voer de volgende code in.

Vergeet niet mongodb te importeren

package com.organisation.project

import com.mongodb.*


class MongoService {
    private static MongoClient mongoClient
    private static host = "localhost"    //your host name
    private static port = 27017      //your port no.
    private static databaseName = "your-mongo-db-name"

    public static MongoClient client() {
        if(mongoClient == null){
            return new MongoClient(host,port)
        }else {
            return mongoClient
        }
    }

    public DBCollection collection(collectionName) {
        DB db = client().getDB(databaseName)
        return db.getCollection(collectionName)
    }
}

We kunnen deze MongoService nu gebruiken in onze controllers of andere services.

Nu kun je de volgende dingen doen in je controller.

Vergeet niet mongodb.DBCursor te importeren

package com.organisation.project



import com.mongodb.DBCursor

class YourControllerOrService {

    def mongoService    //including Mongo service 

    def method(){
        def collection = mongoService.collection("your-collection-name")
        DBCursor cursor =  collection.find()
        try{
            while(cursor.hasNext()){
                def doc = cursor.next()
                println doc     //will print raw data if its in your database for that collection
                }

         }finally {
                  cursor.close()
         }

    }
}

Raadpleeg voor meer informatie mongodb java-documenten



  1. Postman socket ophangen kon geen verbinding maken met Mongodb

  2. Haal de itemlijst op door meerdere attribuutwaarden te controleren in MongoDB in golang

  3. JasperFillManager.fillMelden en mongo?

  4. Hoe luister ik naar wijzigingen in een MongoDB-verzameling?