Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package pruebamongo; import com.mongodb.BasicDBObject; import com.mongodb.MongoClient; import com.mongodb.Mongo; import com.mongodb.DBCollection; import com.mongodb.DB; import com.mongodb.DBCursor; import com.mongodb.DBObject; import java.util.HashSet; import java.util.List; import java.util.Set; /** * * @author inmaculada.garcia */ public class PruebaMongo { /** * @param args the command line arguments */ public static void main(String[] args) { System.out.println("Prueba de conexin con MongoDB"); MongoClient mongo = conexionMongo(); if (mongo != null) { System.out.println("Elementos de la coleccin contactos: "); //Cambiar este mtodo segn se quiera en cada caso. modificarElementos(mongo); obtenerDocumentosOrdenados(mongo); } else { System.out.print("Error: No se ha podido extablecer la conexin"); } } private static MongoClient conexionMongo() { //Instanciamos objeto de tipo MongoClient MongoClient mc = null; //Bloque try-catch que establece la conexin si no hay errores. try { //Ruta en donde se aloja en servidor la base de datos mc = new MongoClient("localhost", 27017); } catch (Exception e) { System.out.println("Error: " + e); } return mc; } private static void imprimirBasesDatos(MongoClient mongo) { List basesdatos = mongo.getDatabaseNames(); for (int i = 0; i < basesdatos.size(); i++) { System.out.println("-" + basesdatos.get(i).toString()); } } private static void obtenerColecciones(MongoClient mongo) { List basesDatos = mongo.getDatabaseNames(); for (int i = 0; i < basesDatos.size(); i++) { //Obtenemos las bases de datos existentes: String nombredb = mongo.getDB(basesDatos.get(i).toString()).toString(); System.out.println("-" + nombredb); //Usamos una base de datos en concreto: //if(!nombredb.equals("local")){ DB db = mongo.getDB(nombredb); //Obtenemos el nombre de las colecciones que contiene la base de datos: Set colecciones = db.getCollectionNames(); //Imprimimos la lista de colecciones si hay colecciones que mostrar: if (!colecciones.isEmpty()) for (int j = 0; j < colecciones.size(); j++) { Object col[] = colecciones.toArray(); System.out.println(" * " + col[j]); } else System.out.println(" * Sin colecciones."); } } private static void obtenerDocumentos(MongoClient mongo) { //Seleccionamos la base de datos 'prueba' DB db = mongo.getDB("prueba"); //Seleccionamos la coleccin 'contactos' DBCollection col = db.getCollection("contactos"); //Agregamos todos los elementos de la coleccin a un //objeto de tipo cursor. DBCursor elementos = col.find(); try { while (elementos.hasNext()) { //Seleccionamos cada elemento de la coleccin //Y se imprime DBObject obj = elementos.next(); System.out.println(obj); } } catch (Exception e) { System.out.println("Error: " + e); } finally { elementos.close(); } } private static void obtenerDocumentosOrdenados(MongoClient mongo) { DB db = mongo.getDB("prueba"); DBCollection col = db.getCollection("contactos"); DBCursor elementos = col.find().sort(new BasicDBObject("_id", 1)); try { while (elementos.hasNext()) { //Seleccionamos cada elemento de la coleccin //Y se imprime DBObject obj = elementos.next(); System.out.println(obj); } } catch (Exception e) { System.out.println("Error: " + e); } finally { elementos.close(); } } private static void anadirDocumentos(MongoClient mongo) { //Seleccionamos la base de datos 'prueba' DB db = mongo.getDB("prueba"); //Seleccionamos la coleccin 'contactos' dentro de esa base de datos DBCollection col = db.getCollection("contactos"); //Creamos objeto con los elementos que se han de aadir DBObject obj = new BasicDBObject().append("_id", 12).append("nombre", "Catelyn").append("apellido", "Stark"); try { col.insert(obj); System.out.println("Elemento aadido satisfactoriamente."); } catch (Exception e) { System.out.println("Error: " + e); } } private static void eliminarDocumentos(MongoClient mongo) { DB db = mongo.getDB("prueba"); DBCollection col = db.getCollection("contactos"); try { //Instruccin que va a eliminar los elementos especificados col.remove(new BasicDBObject("nombre", "Eddard")); System.out.println("Elemento elimado satisfactoriamente."); } catch (Exception e) { System.out.println("Error: " + e); } } private static void modificarElementos(MongoClient mongo) { DB db = mongo.getDB("prueba"); DBCollection col = db.getCollection("contactos"); try { //Instruccin que modifica los elementos col.update(new BasicDBObject("_id", 8), //Id que queremos modificar new BasicDBObject("$set", //operador para aadir un elemento new BasicDBObject("muerto", "Si")));//valor del nuevo elemento System.out.println("Elemento modificado satisfactoriamente."); } catch (Exception e) { System.out.println("Error: " + e); } } }