Flujo de Consulta
Distingue el flujo de entrada de consultas generales que comienzan en executeEntity/executeCustomClass y la agregación raíz, Atlas Search, Búsqueda Vectorial.
1. Selección de contexto de ejecución
executeEntity(Class<E>, key)
Selecciona el tipo de entidad y la clave del resolutor, y el nombre de la colección se determina con MongoExecutionContext#getCollectionName(...).
executeCustomClass(Class<E>, key, collectionName)
Especifica directamente el tipo de mapeo de resultados y el nombre real de la colección.
2. Flujo de consulta general
Operaciones que no requieren un constructor de condiciones, como save, saveAll, operaciones en bloque, eliminación de entidades y createHistory, se llaman directamente en el constructor de ejecución. No hay un terminal público update() separado, y la actualización condicional se realiza con atomicUpdate().
3. Flujo con restricciones en la primera etapa
agregación()
Desde la primera etapa, el usuario configura directamente el pipeline Bson del controlador.
buscar(indice)
Constructor exclusivo de Atlas Search que respeta las restricciones de primera etapa de $search/$searchMeta.
buscarVectorial(indice)
Constructor exclusivo de Búsqueda Vectorial que respeta las restricciones de primera etapa de $vectorSearch.
4. Escape nativo del controlador
• filtro general: driverFilter(Bson)
• ordenamiento: SortSpec.driver(Bson)
• agregación raíz: aggregation().stage(Bson)
• Operador/opciones de búsqueda: operator(SearchOperator), driverOptions(...), stage(Bson)
• Consulta/opciones de vector: query(VectorSearchQuery), driverOptions(...), stage(Bson)
• opción del editor: customizeQuery(...), customizeAggregation(...)