Spring Boot: archivo application.yml/application.yaml

Spring es ampliamente utilizado para crear aplicaciones escalables. Para aplicaciones web Spring proporciona. En Spring Boot , cada vez que creamos una nueva aplicación Spring Boot en Spring Starter, o dentro de un IDE (Eclipse o STS), se encuentra un archivo dentro de la carpeta src/main/resources denominada archivo application.properties que se muestra en los siguientes medios :

Entonces, en una aplicación Spring Boot, el archivo application.properties se usa para escribir la propiedad relacionada con la aplicación en ese archivo. Este archivo contiene la configuración diferente que se requiere para ejecutar la aplicación en un entorno diferente, y cada entorno tendrá una propiedad diferente definida por él. Dentro del archivo de propiedades de la aplicación, definimos cada tipo de propiedad, como cambiar el puerto, la conectividad de la base de datos, la conexión al servidor eureka y muchas más. Pero a veces hay otro archivo ubicado dentro de la carpeta src/main/resources llamada application.yml/application.yaml y el código presente dentro de este archivo está presente en un formato jerárquico que se muestra en la siguiente imagen:

Entonces, ¿qué es este archivo application.yml ? YAML significa Yet Another Markup Language o YAML no es un lenguaje de marcado (un acrónimo recursivo), que enfatiza que YAML es para datos, no para documentos. YAML es un lenguaje de serialización de datos que a menudo se usa para escribir archivos de configuración. Entonces, el archivo de configuración YAML en Spring Boot proporciona una sintaxis muy conveniente para almacenar configuraciones de registro en un formato jerárquico. La aplicación.propiedadesEl archivo no es tan legible. Entonces, la mayoría de las veces, los desarrolladores eligen el archivo application.yml sobre el archivo application.properties. YAML es un superconjunto de JSON y, como tal, es un formato muy conveniente para especificar datos de configuración jerárquicos. YAML es más legible y es bueno para los desarrolladores leer/escribir archivos de configuración. 

Ahora veamos algunos ejemplos para una mejor comprensión proponiendo diferentes ejemplos que se enumeran y describen más adelante de la siguiente manera:

  1. Para cambiar el número de puerto
  2. Para definir el nombre de nuestra aplicación
  3. Conexión con la base de datos MySQL
  4. Conexión con la base de datos H2
  5. Conexión con la base de datos MongoDB
  6. Conexión con el servidor Eureka

Ejemplo 1: Para cambiar el número de puerto

A veces, cuando ejecuta su aplicación Spring, puede encontrar el siguiente tipo de error

El error es que el puerto 8989 ya estaba en uso. Entonces, en este caso, puede eliminar ese proceso que se está ejecutando en este número de puerto o puede cambiar su número de puerto y volver a ejecutar su aplicación. Entonces, ¿dónde tienes que cambiar tu número de puerto? por ejemplo, en el archivo application.properties o en el archivo application.yml . Entonces puede cambiar su número de puerto por la siguiente línea

server:
  port:
    8082

Ejemplo 2: Definir el nombre de nuestra aplicación

Para definir el nombre de nuestra aplicación puedes escribir las propiedades así

spring:
  application:
    name: userservice

Entonces puede ver que esto representa la propiedad como un par clave-valor aquí, cada clave asociada con un valor también.

Ejemplo 3: Conexión con la base de datos MySQL

Para conectarse con la base de datos MySQL, debe escribir un montón de líneas. Puedes escribir las propiedades así

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    username: springuser
    url: jdbc:mysql://${MYSQL_HOST:localhost}:3306/db_example
    password: ThePassword
  jpa:
    hibernate:
      ddl-auto: update

Ejemplo 4: Conexión con la base de datos H2

H2 es una base de datos incrustada, de código abierto y en memoria. Es un sistema de gestión de bases de datos relacionales escrito en Java. Es una aplicación cliente/servidor. Generalmente se utiliza en pruebas unitarias. Almacena datos en la memoria, no conserva los datos en el disco. Para conectarse con la base de datos H2, debe escribir un montón de líneas. Puedes escribir las propiedades así

spring:
  h2:
    console:
      enabled: 'true'
  datasource:
    username: sa
    url: jdbc:h2:mem:dcbapp
    driverClassName: org.h2.Driver
    password: password
  jpa:
    database-platform: org.hibernate.dialect.H2Dialect

Ejemplo 5: Conexión con la base de datos MongoDB

Para conectarse con la base de datos MongoDB, debe escribir un montón de líneas. Puedes escribir las propiedades así

spring:
  data:
    mongodb:
      database: BookStore
      port: '27017'
      host: localhost

Ejemplo 6: Conexión con el servidor Eureka

Eureka Server es una aplicación que contiene información sobre todas las aplicaciones de servicio al cliente. Cada microservicio se registrará en el servidor Eureka y el servidor Eureka conoce todas las aplicaciones cliente que se ejecutan en cada puerto y dirección IP. Eureka Server también se conoce como Discovery Server. Puedes escribir las propiedades así

eureka:
  client:
    service-url:
      defaultZone: http://localhost:9096/eureka/
    fetch-registry: 'true'
    register-with-eureka: 'true'
  instance:
    hostname: localhost

Nota : El valor escrito aquí son datos de muestra. Por favor, escriba los valores según sus requisitos. Pero las claves siguen siendo las mismas. 

Sugerencia:  si desea convertir el código de su archivo application.properties en un archivo application.yml , puede buscar en Google y seleccionar alguna herramienta en línea para hacerlo.

Publicación traducida automáticamente

Artículo escrito por AmiyaRanjanRout y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *