Expresiones Dinámicas
Descripción general
Las expresiones dinámicas proporcionan un mecanismo para definir variables dentro de sus modelos del Marco de Reglas de Negocio que pueden ser configurado en tiempo de ejecución a través de fuentes externas como HOCON archivos o registro programático.
Conceptos Clave
Las expresiones dinámicas constan de tres componentes principales:
-
Variables Dinámicas- Definiciones de variables seguras para tipos generadas a partir de MPS bibliotecas de valores, con valores predeterminados que pueden ser anulados en tiempo de ejecución
-
DynamicExpressionRegistry- Un registro central que almacena valores configurados y los proporciona al código generado durante la ejecución.
-
Fuentes de Configuración- Proveedores intercambiables (como HOCON archivos) que cargan valores en el registro al inicio de la aplicación
Cómo Funciona
El flujo de trabajo es:
-
Defina variables dinámicas en un MPS biblioteca de valores con valores predeterminados
-
MPS genera un
DynamicVariableLibraryclase que contiene las definiciones de variables -
Al iniciar la aplicación, las fuentes de configuración cargan valores en el
DynamicExpressionRegistry -
Cuando se ejecuta el código generado, resuelve los valores de las variables del registro (o utiliza valores predeterminados).
Variables Dinámicas vs Bibliotecas de Valores
Las variables dinámicas se definen dentro de bibliotecas de valores, pero cumplen un propósito diferente:
| Valores de la Biblioteca de Valores | Variables Dinámicas |
|---|---|
Valores estáticos compilados en el código generado |
Valores configurables en tiempo de ejecución con valores predeterminados |
No se puede cambiar sin reconstruir. |
Puede ser anulado a través de la configuración externa. |
Ideal para constantes y datos estáticos |
Ideal para configuraciones específicas del entorno, umbrales, banderas de características. |
Alcance
El DynamicExpressionRegistry admite dos niveles de alcance:
-
Alcance global- Valores disponibles para todas las ejecuciones
-
Alcance de la entidad- Valores específicos para un contexto de procesamiento (por ejemplo, anulaciones por transacción)
Los valores específicos de la entidad tienen prioridad sobre los valores globales, lo que permite un control detallado cuando sea necesario.
Casos de Uso
Las expresiones dinámicas son adecuadas para:
-
Umbrales específicos del entorno (por ejemplo, límites diferentes para dev/prod)
-
Banderas de características que pueden ser activadas sin necesidad de redepliegue.
-
Parámetros empresariales que cambian según los requisitos operativos
-
Configuración por entidad en escenarios multi-inquilino
Introducción
Para utilizar expresiones dinámicas en su aplicación:
-
Defina variables dinámicas en su MPS biblioteca de valores
-
Añada el
ipf-studio-configuration-hocon-spring-starterdependencia -
Crear un HOCON archivo de configuración con sus valores
-
El Spring Boot la auto-configuración maneja el registro automáticamente