Как получить свойства 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);
}
Спасибо!