Red de conocimiento informático - Problemas con los teléfonos móviles - La segunda versión de Spring Boot, explicación detallada de los archivos de configuración: ¡la más completa de la historia!

La segunda versión de Spring Boot, explicación detallada de los archivos de configuración: ¡la más completa de la historia!

?Spring Boot proporciona oficialmente dos formatos de archivos de configuración de uso común, a saber, propiedades y YML. YML es más joven y tiene más capas que el formato de propiedades. Se recomienda encarecidamente utilizar el formato YML

Cuando se inicia el proyecto Spring Boot, escaneará application.properties o application.yml como el archivo de configuración predeterminado.

Leer el código fuente con las manos desnudas

Método de carga de la clase interna Loader

Método getSearchLocations()

asResolvedSet()

A continuación se muestra una lista de archivos de configuración en orden de mayor a menor prioridad. Archivos de configuración ordenados por prioridad:

Tome la configuración del puerto de la aplicación como ejemplo para obtener una comprensión preliminar del archivo de configuración Spring Boot

terminación del sufijo de propiedades (application.properties)

terminación del sufijo yml/yaml (application.yml/application.yaml)

Número, cadena, booleano, fecha

Objeto, mapa

Matriz

Número, Cadena, Booleano, Fecha

Objeto, Mapa

Matriz

@ ConfigurationProperties(prefijo = "persona") explicado

Anotaciones en clases

Anotaciones en métodos

Resumen

La anotación ?@ConfigurationProperties le permite vincular fácilmente archivos de configuración al tipo de entidades.

?Vale la pena señalar que la anotación @ConfigurationProperties solo admite la obtención de valores de los archivos de configuración predeterminados de Spring Boot (application.properties, application.yml, application.aml), entonces, ¿cómo obtenemos los valores? desde una aplicación personalizada ¿Qué pasa con la obtención de valores de .properties, application.yml y application.aml?

?No se preocupe, hay una solución, es decir, agregar otra anotación: @PropertySource(value = "classpath:custom-profile.properties"), la anotación @PropertySource se presentará a continuación. Espere pacientemente nuestra presentación.

Utilice la anotación @PropertySource

Archivos de configuración correspondientes

Cree dos archivos de configuración: custom-profile.yml y custom-profile1.yml, y agréguelos La introducción es el siguiente.

Podemos utilizar el método de variable de control para realizar pruebas, por lo que no entraré en detalles aquí.

Vayamos directamente a la conclusión: el orden de carga del resorte es de izquierda a derecha. Después de la carga, se sobrescribirá el valor del atributo cargado primero.

Otra cosa a tener en cuenta: @PropertySource carga xxx.properties de forma predeterminada y no puede cargar archivos de configuración en formato YML.

¿Cómo solucionarlo? El siguiente es el método para resolver este problema

El archivo de configuración correspondiente:

Write PropertiesController

Extensión

configuración principal application.yml file

archivo de configuración de desarrollo application-dev.yml

archivo de configuración de producción application-prod.yml

archivo de configuración de prueba application-test.yml

(1) Archivo de configuración principal: configurar las opciones de activación

(2) Otros archivos de configuración: especificar el entorno (igual que yml. (Igual que yml, pero en forma de clave=valor, el tres archivos de configuración son para: application-dev.properties, application-prod.properties, application-test.properties)

Ya sea utilizando el método de bloqueo de múltiples documentos anterior o creando un nuevo application-test.yml archivo, puede especificar spring.profiles.active=test para activar el perfil especificado en el archivo de configuración.

Gracias por leer este artículo. Deseo que todos se hagan ricos pronto y alcancen la libertad financiera.

Escribir no es fácil. ¡Dale me gusta, comenta y marca como favorito!