Пожалуйста, добавьте следующий bean-компонент в ваш класс конфигурации: -
//To resolve values using the @Value
@Bean
public static PropertySourcesPlaceholderConfigurer propertyConfigDev() {
return new PropertySourcesPlaceholderConfigurer();
}
Обновление
static не будет работать в этом случае, вам нужно сделать следующее: -
Добавьте следующий код: -
@Value("${aes.encryption.cipherString}")
private String cyperString;
public String getCypherString(){
return this.cyperString;
}
Это просто пример, но вы используете статический, потому что вы обращаетесь к нему в main method
, который является static
, и для доступа к переменной вы пометили его static
Проблема в том, что статическая переменная - это переменная класса, у которой нет свойства, когда код достигает вашей строки System.out
для переменной. В настоящее время spring все еще выполняет внутреннюю инициализацию и т. Д.
Вы используете / используете переменную в качестве не пружинного фреймворка, когда вы создаете экземпляр с помощью Spring Это должно быть только в одну сторону
И я бы предложил иметь отдельный класс для загрузки этих переменных в контекст, может быть какой-то класс помечен @Component
или, более конкретно, @Service