Как связать значение даты в ключе карты Java из свойства YAML с помощью Spring Boot?
Файл свойства YAML:
settings:
calendar:
2018-06-04: 2018-06-25
2018-07-15: 2018-07-20
Класс свойств:
Назначениекарта calendar
предназначена для перевода с одной даты на другую.
@ConfigurationProperties(prefix = "settings")
public class CalendarSettings {
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Map<LocalDate, LocalDate> calendar = new HashMap<>();
public Map<LocalDate, LocalDate> getCalendar() {
return calendar;
}
public void setCalendar(
Map<LocalDate, LocalDate> calendar) {
this.calendar = calendar;
}
}
При этой настройке я получаю следующее исключение:
Property: settings.null
Value: 2018-06-04
Reason: Failed to convert property value of type 'java.lang.String' to required type 'java.time.LocalDate' for property 'null';
nested exception is java.lang.IllegalStateException: Cannot convert value of type 'java.lang.String' to required type 'java.time.LocalDate':
no matching editors or conversion strategy found
Я борюсь с тем, как аннотировать свойство календаряв CalendarSettings.class
- если это возможно.Или как создать какой-нибудь десериализатор.