В одном из моих приложений Spring Boot у меня есть контроллер, который должен читать из application.yml для доступа к внешнему API. У меня есть настройки организации во внешнем API, аналогичном организации github, и каждая организация имеет свой собственный идентификатор клиента и секретный ключ.
Мой application.yml выглядит примерно так.
organization:
abc:
client:
clientId: f29e347add73
clientSecret: dad2404e63ec4cd
xyz:
client:
clientId: 0884340cf3e793
clientSecret: a26ff0119d907e9
В настоящее время я могу подобрать значение свойства в моем контроллере следующим образом.
@Value("${organization.abc.client.clientId}")
private String abcClientId;
@Value("${organization.abc.client.clientSecret}")
private String abcClientSecret;
Но мне нужно вместо жесткого кодирования, если приходит запрос на abc
, конфигурация для abc
подбирается, а когда для xyz
приходит конфигурация для xyz
, То же самое для любого номера организации, которую я продолжаю добавлять в файл application.yml.
Пожалуйста, помогите мне, как этого добиться.