Convertir Yaml propiedades de objeto a objeto Java

syed:

Aquí está mi archivo de propiedades Yaml

bb:
  employees:
   -
    employee1:
      name: Syed
      locations:
        - HYD
        - MAA
   -
    employee2:
      name: Adhil
      locations:
        - BOM
        - DEL

Quiero convertir el objeto en mi POJO en mi applicaiton. Sin embargo, yo no soy capaz de hacerlo, siempre devuelve un valor nulo.

¿Hay algo, que me falta?

@Data

@Builder
 @AllArgsConstructor
@NoArgsConstructor
@Configuration
@ConfigurationProperties(prefix = "bb")
public class EmpConfig {

    EmployeeDetails employees;
}

Clase EmployeeDetails

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Configuration

public class EmployeeDetails {

    List<Map<String, List<String>>> details;
}
zafiro;

Me funcionó de esta manera:

El YAML (llamado application.yaml) (guiones antes de conocerse los employeeIds (Employee1, Employee2))

bb:
  employees:
    employee1:
      name: Syed
      locations:
        - HYD
        - MAA
    employee2:
      name: Adhil
      locations:
        - BOM
        - DEL

la clase de configuración:

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Configuration
@ConfigurationProperties(prefix = "bb")
public class EmpConfig {
    private Map<String, EmployeeDetails> employees;
}

Detalles sobre empleados:

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class EmployeeDetails {
    private String name;
    private List<String> locations;
}

Así que, básicamente, tiene problemas con la sintaxis y los tipos de datos, por lo que la primavera no puede analizar el archivo de configuración.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=372787&siteId=1
Recomendado
Clasificación