Конфигурация JDBC для весенней загрузки с внутренним хранилищем
Я использую Spring Boot и Spring Vault Cloud: он работает очень хорошо, когда я загружаю определенный ключ, а не код, как:
@Value("${login}")
String login;
Значение правильно прочитано из секретов, которые я указал в моей секретной конфигурации бэкэнда.
Однако я не могу понять, как обращаться с автоматическими свойствами пружины. Допустим, я хочу создать пружинное соединение с базой данных jdbc:
@Bean
public DataSource dataSource() {
return DataSourceBuilder
.create()
.build();
}
Как вы можете видеть, я не определяю driverClassName, user, password, url. Если я определяю spring.jdbc. * В application.yml, это работает
Но мне нужно прочитать эти свойства из секретного хранилища hashicorp.
=> Как я могу в общем подходе определить различные значения загрузочной пружины в секреты хранилища?
Гийом
1 ответ
ОК, я могу ответить на свой вопрос:
при создании источника данных по умолчанию Spring ищет ключи spring.datasource. * в свойстве propertySource, в файле yml и в хранилище для моего конкретного случая.
Определение секретного ключа, имеющего ключ в формате свойств, например spring.datasource.password, полностью работает при инициализации bean-компонента DS
Надеюсь, это поможет кому-то!
Гийом