Конфигурация jdbc spring boot с бэкэндом хранилища

Я использую Spring Boot и Spring Vault Cloud: он работает очень хорошо, когда я загружаю определенный ключ не в такой код, как:

@Value("${login}")
String login;

Значение правильно считывается из секретов, которые я указал в своей конфигурации секретного бэкэнда.

Однако я не могу понять, как обращаться с автоматическими свойствами пружины. Допустим, я хочу создать соединение с базой данных spring jdbc:

@Bean
public DataSource dataSource() {
    return DataSourceBuilder
            .create()
            .build();
}

Как видите, я не определяю driverClassName, пользователя, пароль, URL-адрес. Если я определяю spring.jdbc.* в application.yml, он работает

Но мне нужно прочитать эти свойства из секретного хранилища hashicorp.

=> Как я могу в общем подходе определить различные значения весенней загрузки в секреты хранилища?

Гийом

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Версия Java на основе версии загрузки
Версия Java на основе версии загрузки
Если вы зайдете на официальный сайт Spring Boot , там представлен start.spring.io , который упрощает создание проектов Spring Boot, как показано ниже.
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
0
0
464
1

Ответы 1

Хорошо, я могу ответить на свой вопрос:

при создании источника данных по умолчанию Spring ищет ключи spring.datasource.* в своем источнике свойств, в файле yml и в хранилище для моего конкретного случая.

Определение секрета с ключом в формате свойств, например spring.datasource.password, полностью работает при инициализации компонента DS.

Надеюсь, это поможет кому-то!

Гийом

Другие вопросы по теме