Похоже, это сработало. Но я должен использовать способ ДЖЕЙ с инъекцией конструктора вместо этого?
аюсь использовать значения из моего файла application.properties в своем классе реализации службы / bean-компоненте. Но когда бин инициализируется через мой класс конфигурации, все значения свойств равны нулю.
Конфиг класс:
@Configuration
public class AppConfig {
@Bean AppServiceImpl appServiceImpl() {
return new AppServiceImpl();
}
}
Класс обслуживания:
@Component
public class AppServiceImpl implements AppService {
@Value("${value.one}")
String value_one;
@Value("${value.two}")
String value_two;
@Value("${value.three}")
String value_three;
//values are null here
public AppServiceImpl() {
functionOne(value_one, value_two, value_three);
}
}
application.properties (в разделе src / main / resources):
value.one=1
value.two=2
value.three=3
Делая некоторую отладку, я вижу, что класс AppConfig нашел файл свойств, и если я, попробуйте объявить@Value("${value.one}") String value_one;
там это показывает, что ему было дано значение1
как и ожидалось.
Но в моем классе AppServiceImpl все значения равны нулю. Что я здесь не так делаю? Как это сделать правильно в Springboot? Или просто весна.
Благодарю.