Что вы хотите сделать, это установить @ConfigurationProperties
, а не источник свойства. Эта функция Spring Boot позволяет считывать свойства в POJO, которые можно использовать в другом месте кода.
Таким образом, свойства AppProperties будут выглядеть примерно так:
@Configuration
@ConfigurationProperties
class AppProperties {
private String serverSSLKeyStore;
// the other properties
public void setServerSslKeyStore(String value) {
this.serverSSLKeyStore = value;
}
public String getServerSslKeyStore() {
return this.serverSSLKeyStore;
}
}
Каждое поле должно иметь соответствующий свойство с тем же именем в файле application.properties. Обратите внимание, что каждое поле должно иметь методы getter и setter, чтобы это работало.
Затем вы можете инициализировать его в загрузочном приложении Spring, используя:
@SpringBootApplication
@EnableConfigurationProperties(AppProperties.class) // not needed in later spring version
class MyApplication {
public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}
}