Red de conocimiento informático - Conocimiento del nombre de dominio - Cómo utilizar Java para operar mongoDB y actualizar todo el documento

Cómo utilizar Java para operar mongoDB y actualizar todo el documento

El blog anterior presentó el uso de Java para operar mongoDB para procesar documentos. Ahora presentaremos el procesamiento de documentos. Al igual que el procesamiento de documentos, también se realiza mediante la interacción de varias clases proporcionadas en el controlador Java. Estas clases incluyen:

Clase DBCollection: especifica una instancia de una colección específica en la base de datos, proporcionando una serie de operaciones como agregar, eliminar, modificar y verificar. En las bases de datos relacionales, las operaciones de agregar, eliminar, modificar y verificar datos se realizan en tablas, mientras que en mongodb, estas operaciones se realizan en colecciones.

Interfaz DBObject: DBObject es un mapeo de claves y valores, por lo que la clase de implementación de DBObject se puede utilizar como resultado de devolución de la consulta o como condición de consulta

DBCursor: Devuelve el cursor del conjunto de resultados.

Aquí hay algunos ejemplos:

[java] ver copia simple

Mongo mongo = new Mongo()

DB db = mongo; .getDB("myMongoDB");

curso DBCollection = db.getCollection("curso");

Mongo mongo = new Mongo()getCollection("curso");// Operar en la colección de cursos en la base de datos myMongoDB

// Agregar operación

// Las siguientes son varias formas de crear documentos respectivamente: 1. .append() 2. .put( ) 3. A través del mapa 4. Convirtiendo json a objeto DBObject

DBObject english = new BasicDBObject().append("name", "english").append("score", 5).append ( "id",1);

curso .insert(inglés);

DBObject math = new BasicDBObject()

math.put("id "); , 2);

math.put("nombre", "matemáticas");

math.put(" puntuación",

curso); .insert(matemáticas);

Map map = new HashMap()

map.put("nombre"," física" )

map.put("puntuación", 10);

map.put("id",

DBObject física= nuevo BasicDBObject ( mapa);

curso.insert( física);

String json = "{'nombre':'química','puntuación':10,'id':4} " ;

química DBObject =(DBObject)JSON.parse(json);

curso.insert(química

Lista listaDecursos = nueva ArrayList); ();

DBObject chino = new BasicDBObject().

curso.insert( courseList

// Agregar archivo en línea

String json2 =" {'Nombre':'Inglés', 'Puntuación':10, 'Profesor':[{'Nombre':'Liu Song', 'id':'1'},{ 'Nombre ':'Liu Song', 'id':2 }]}";

DBObject english2= (DBObject)JSON.

list.add(new BasicDBObject("nombre", "Liu Songsong").append("id",1));

list.add(nuevo Bas

icDBObject("nombre", "Liu Songsong").append("id",1));

curso.insert(inglés2

curso."

DBObject english3= new BasicDBObject().append("nombre", "inglés").append("puntuación",10).append("profesor", lista

// Consulta);

// Consultar todo, consultar un documento, consulta condicional

DBCursor cur = course.find();

while(cur.hasNext()){

Documento DBObject = cur .next();

System.out.println(document.get("nombre")); >

Documento DBObject = curso.findOne();

String nombre=(String )document.get("nombre");

System.out.println(nombre) ;

// Créditos de consulta = 5

DBObject consulta1 = new BasicDBObject("puntuación",

DBObject consulta2 = new BasicDBObject("puntuación"); ,new BasicDBObject("$gte",5));

DBCursor cur2 = course.find(query2

//Expresión condicional: $ge(> ;) $get; (>=) $lt(<) $lte(<=) $ne(<>) $en $nin $todo $existe $o $ni $dónde $tipo, etc.

//FindAndModify

DBObject newDocument = course.findAndModify(new BasicDBObject("score",5), new BasicDBObject("score",15));

//Operación de actualización

//q: condición de actualización o:objeto actualizado

curso.update(new BasicDBObject("score",10), new BasicDBObject("test",15)); p>course.update(new BasicDBObject("score",15), new BasicDBObject("$set",new BasicDBObject("isRequired",true)));

// La diferencia entre los dos. es decir, la primera actualización reemplaza el documento original con el documento {"test":15},

// La segunda actualización agrega la expresión condicional $set, que reemplaza el documento original.

set, agregue la clave "isRequired" al documento original

// Expresión condicional: $set $unset $push $inc $push $push $addToSet $pull $pullAll $pop, etc.

//Cuando los _ids son iguales, se ejecutará el método de guardar. Equivalente a la operación de actualización

course.save(new BasicDBObject("name", "math").append("_id", 1));

course.save(new). BasicDBObject ("name", "math").append ("_id", 1));

/ Eliminar documentos que cumplan las condiciones

course.remove(new BasicDBObject(" score" , 15));

/ Eliminar la colección y todos los documentos

course.drop();

Lo anterior solo presenta algunas operaciones simples, la complejidad específica de consultar actualizaciones Esto puede depender de la necesidad del documento de encontrar información nuevamente. De hecho, no importa si la operación es simple o compleja, el núcleo es la operación de DBObject y DBCollection, principalmente dominar cómo DBObject construye pares clave-valor y algunas expresiones condicionales.