Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Desarrolladores

Esta sección incluye guías sobre cómo utilizar cada uno de los constructores disponibles y demuestra la utilidad que brindan las clases constructoras del driver Kotlin.

El controlador Kotlin proporciona clases para simplificar la ejecución de operaciones CRUD y el uso de la API de Agregación. Los métodos de utilidad estáticos permiten crear consultas y otros tipos de documentos de forma más eficiente.

Cuando usas clases de desarrolladores, aprovechas los siguientes productos:

  • El compilador de Kotlin para encontrar errores durante el desarrollo

  • El IDE para el descubrimiento, la depuración y la finalización de código.

Al usar constructores, el compilador de Kotlin y el IDE detectan errores como operadores mal escritos o parámetros faltantes desde el principio. Si se usa la shell de MongoDB o Kotlin simple, se escriben los operadores como cadenas y no se observa ninguna indicación visual del problema, lo que envía estos errores al tiempo de ejecución en lugar de al tiempo de compilación.

Al usar clases de constructor, puedes escribir operadores como métodos, de modo que tu IDE indique al instante si tu código contiene errores. Durante el desarrollo, tu IDE también puede mostrarte métodos que puedes usar y completar tu código con parámetros de marcador de posición.

Supongamos que desea enviar un correo electrónico de marketing a todos los usuarios de la users Colección que cumpla los siguientes criterios:

  • Usuarios en los que el valor del campo gender es "female"

  • Usuarios en los que el valor del campo age es mayor que 29

También necesitas que tu query devuelva solo sus direcciones de correo electrónico.

Los documentos en la colección users están modelados por la siguiente clase de datos:

data class User(
@BsonId
val id: BsonObjectId = BsonObjectId(),
val gender: String,
val age: Int,
val email: String,
)

El siguiente código proporciona el comando que usted usa en el MongoDB Shell para realizar la query:

collection.find({ "gender": "female", "age" : { "$gt": 29 }}, { "_id": 0, "email": 1 })

El siguiente código proporciona la operación de búsqueda que se crea sin builders en el controlador de Kotlin:

data class Results(val email: String)
val filter = Document().append("gender", "female").append("age", Document().append("\$gt", 29))
val projection = Document().append("_id", 0).append("email", 1)
val results = collection.find<Results>(filter).projection(projection)

En este caso, podrías incluir fácilmente un error al escribir el operador "\$gt" en el filtro, pero tu IDE solo devuelve el error relevante en tiempo de ejecución.

El siguiente código proporciona la operación find que creas utilizando desarrolladores en el driver de Kotlin:

import com.mongodb.client.model.Filters
import com.mongodb.client.model.Projections
data class Results(val email: String)
val filter = Filters.and(Filters.eq(User::gender.name, "female"), Filters.gt(User::age.name, 29))
val projection = Projections.fields(Projections.excludeId(), Projections.include("email"))
val results = collection.find<Results>(filter).projection(projection)
  • Agregados: crear canales de agregación

    • Consulta la MongoDB Vector Search para obtener más información sobre el método Aggregates.vectorSearch()

  • Filtros: Compilar filtro de query

  • Índices: Construcción de claves de índice

  • Proyecciones: Compila proyecciones

  • Ordenaciones: crear criterios de ordenación

  • Actualizaciones: Compila documentos de actualización

La Use Desarrolladores with Data Classes guía proporciona ejemplos sobre cómo utilizar las clases de desarrolladores anteriores directamente con las propiedades de las data classes. Esta guía puede ayudarte a hacer que tu aplicación sea más segura en cuanto a tipos y mejorar la interoperabilidad con Kotlin.

Volver

Expresiones de agregación

En esta página