Добавьте несколько сроков продолжительности в application.yml для одного свойства - PullRequest
0 голосов
/ 14 июля 2020

В Spring Boot можно установить переменную конфигурации в application.yml следующим образом:

myprogram:
   my-property: 5d # respectively 5 days

И в коде ее можно получить следующим образом:

@ConfigurationProperties("myprogram")
public class MyProgramProperties {

    @DurationUnit(ChronoUnit.SECONDS)
    private Duration myProperty = Duration.ofSeconds(30); // default = 30 sec, if config var is not set

    public Duration getMyProperty() {
        return this.myProperty ;
    }

    public void setMyProperty(Duration myProperty ) {
        this.myProperty = myProperty ;
    }

}

Но есть возможно иметь следующее, и если да, то как этого добиться:

myprogram:
   my-property: 5d 3h 5m # respectively 5 days, 3 hours, 5 minutes

Заранее спасибо.

1 Ответ

0 голосов
/ 14 июля 2020

Я так не думаю, вам нужно рассматривать его как String и иметь отдельные методы get для извлечения того, что вы хотите.

...