Overview
En esta guía, aprenderá a ejecutar un comando de base de datos con el controlador Java Reactive Streams. Puede usar comandos de base de datos para realizar diversas tareas administrativas y de diagnóstico, como obtener estadísticas del servidor, inicializar un conjunto de réplicas o ejecutar una canalización de agregación.
Tip
Prefiera los métodos del controlador a los comandos de base de datos
El driver proporciona métodos para muchos comandos de base de datos. Se recomienda utilizar métodos del controlador en lugar de ejecutar comandos de base de datos cuando sea posible.
Para realizar tareas administrativas, utilice el MongoDB Shell en lugar del controlador Java Reactive Streams. Llamar al método db.runCommand() de MongoDB Shell es el método preferido para ejecutar comandos de base de datos, ya que proporciona una interfaz consistente entre el shell y los controladores.
Importante
Proyecto Reactor librería
Esta guía utiliza la biblioteca Project Reactor para consumir Publisher Instancias devueltas por los métodos del controlador Java Reactive Streams. Para obtener más información sobre la biblioteca Project Reactor y cómo usarla, consulte Introducción en la documentación de Reactor. Para obtener más información sobre cómo usamos los métodos de la biblioteca Project Reactor en esta guía, consulte Guía deescritura de datos en MongoDB.
Ejecute un comando
Para ejecutar un comando de base de datos, especifíquelo en un documento y páselo al método runCommand(). El siguiente código llama al método runCommand() de una base de datos para ejecutar el comando ping, un comando sin operación que se utiliza para comprobar si un servidor responde.
Document command = new Document("ping", 1); Publisher<Document> commandPublisher = database.runCommand(command); Document result = Mono.from(commandPublisher).block(); System.out.println(result);
Document{{ok=1}}
Información Adicional
Para ver una lista completa de los comandos de base de datos y sus parámetros disponibles, consulte Comandos de base de datos en el manual de MongoDB Server.
Documentación de la API
Para obtener más información sobre el runCommand() método, consulte la documentación de la API runCommand().