Если у меня есть application.yml, который выглядит какYML автоматического связывания/конфигурации Java в Spring Bean загрузки
system:
props:
version: 1.0.0
host: myhost
myapp:
environment: LOCAL
---
spring:
profiles: DEV
system:
myapp:
environment: DEV
devhost: mydevhost
---
spring:
profiles: PROD
system:
myapp:
environment: PROD
testhost: myprodhost
И я создал класс конфигурации, используя
@Configuration
@EnableConfigurationProperties
@ConfigurationProperties
public class MyConfig {
private string devhost;
:
:
public String getDevHost() {return devhost;}
}
Умею autowire MyConfig
в класс, который является аннотированным бобом класса, который выглядит как
@Configuration
@EnableJms
public class MyOtherConfig {
@Bean
public Object beanThatNeedsMyConfig(){return new beanThatNeedsMyConfig();}
}
Я попытался с помощью своей интуиции и Autowired его в beanThatNeedsMyConfig()
, и я вызываю его, говоря myConfig.getDevHost()
, но я получаю нулевой указатель, поскольку myConfig
имеет значение NULL. Я предполагаю, что Весна еще не признала существование. Я все еще работаю над тем, чтобы схватить Spring Boot и жизненные циклы и т. Д. И т. Д. Любые знания о том, как я могу это сделать?
Я вижу. Приятно знать, что я был в правильном направлении мышления, хотя я не знал техник. Я сделал именно то, что вы предложили в моем ответе ниже. Поместите его в «MyOtherConfig» и передайте его как параметр. Хорошо, чтобы мое решение было подтверждено. –
Прохладный. Теперь не позволяйте мне поймать, что вы делаете это снова;) –