Как найти все источники данных, привязанные к приложению - PullRequest
0 голосов
/ 28 апреля 2018

Я хочу использовать spring-boot, spring-cloud, чтобы связать все источники данных с облачным литейным приложением. Есть ли способ получить список? Если я могу получить имена сервисов, я также могу использовать

AbstractCloudConfig.connectionFactory().dataSource(serviceId)

для создания источника данных.

Ответы [ 2 ]

0 голосов
/ 01 мая 2018

Вы можете сделать что-то вроде этого, чтобы перечислить список служб баз данных и получить DataSource для каждой из них:

Cloud cloud = abstractCloudConfig.cloud();
List<ServiceInfo> serviceInfos = cloud.getServiceInfos(DataSource.class);
List<DataSource> dataSources = new ArrayList<>();
for (ServiceInfo serviceInfo : serviceInfos) {
    dataSources.add(cloud.getServiceConnector(serviceInfo.getId, null));
}
0 голосов
/ 30 апреля 2018

Конфигурация источников данных задается в среде контейнера внутри переменной VCAP_SERVICES в Cloud Foundry. System.getenv ('VCAP_SERVICES') должен перечислить все источники данных в вашем случае.

Обратитесь к: https://docs.run.pivotal.io/devguide/deploy-apps/environment-variable.html#VCAP-SERVICES

...