Как получить свойства CrudRepository с сервера Config?

У меня есть сервис, который использует MySQL для чтения данных с использованием CrudRepository. В настоящее время свойства хранятся в файле application.yml, например:

spring:
    datasource:
        url: jdbc:mysql://localhost:3306/mydb
        username: unitUser
        password: unitPassword
        driverClassName: com.mysql.jdbc.Driver

Я хочу, чтобы приложение считывало эти свойства с сервера SpringCloud Config, который получает свои свойства от GitHub. У меня есть сервер Config, настроенный для этого, и мое приложение настроено для получения свойств от него. Например, я могу получить свойство сообщения, подобное этому, внутри RestController:

@Value("${msg:Hello World - Config Server Not working}")
private String msg;

Идея состоит в том, чтобы иметь несколько сред (например, Unit, Test, Prod) и иметь разные свойства подключения для каждой среды, поэтому мое приложение подключается к БД модуля в среде Unit, Prod DB в среде производства и т. Д.

Как я могу получить CrudRepository для получения URL, имени пользователя, пароля, driverClassName с сервера конфигурации при запуске приложения?

public interface BookRepository extends CrudRepository<Book,Long> {
    public Book findByIsbn(String isbn);
}

Спасибо!

0 ответов

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