2016-06-09 9 views
0

Java 응용 프로그램에 바인딩 된 사용자 제공 서비스에서 자격 증명에 어떻게 액세스합니까?Java App에서 Pivotal Cloud Foundry 액세스 서비스

예를 들어

내가 지금 같은 서비스 작성하는 경우 :

cf cups <service instance> -p "DB_URL, DB_USERNAME, DB_PASSWORD".

및 자바 응용 프로그램 내가 그 서비스에 액세스하기 위해 무엇을 할 것이라고 자바 홈페이지에서

에 결합? 자바 응용 프로그램에서

` public static void main(String[] args) throws Exception{ 

    ?????? 
}` 

답변

0

, 당신은 VCAP_SERVICES 환경 변수에 액세스하는 것입니다.

여기에서 자세한 정보를 찾을 수 있습니다 VCAP_SERVICES 환경 변수를 구문 분석하고 자바 객체 모델에서 자격 증명을 제공 할 수 있습니다 http://docs.pivotal.io/pivotalcf/1-7/services/binding-credentials.html

+0

Im에 대해 감사하게 생각합니다 ..... –

2

Spring Cloud Connectors. 사용자가 제공 한 서비스 인스턴스 자격 증명을 사용자 지정 방식으로 형식화하는 경우 커넥터에 자격 증명을 구문 분석하는 방법을 알리기 위해 extension code을 작성해야합니다.

더 나은 방법은 커넥터가 이미 이해하는 방식으로 서비스 인스턴스 자격 증명을 형식화하는 것입니다. 이 작업을 수행하는 가장 쉬운 방법은 대개 단일 연결 문자열을 제공하는 것입니다. 커넥터에서 다양한 데이터베이스 유형을 이해하는 자격 증명 형식을 보여주는 몇 가지 힌트가 Connectors docs 있습니다. 그래서 당신은 이런 식으로 뭔가를 할 수 :

cf cups <service instance> -p '{"url", "mysql://username:[email protected]:3306/dbname"}'

cf cups <service instance> -p '{"jdbcUrl": "jdbc:mysql://hostname:3306/dbname?user=username&password=password"}'

또는 포스트 그레스, 오라클, DB2, 또는 SQLSERVER에 대한 등가물.

프로젝트에 Spring Service Connector을 포함하면 커넥터가 바인딩 된 서비스를 감지하고 필요한 연결 개체 (예 : DataSource)를 만듭니다.

+0

Scott는 각각 다른 서비스를 만들어야합니까? 또는 둘을 함께 결합 할 수 있습니다. – Jesse

+0

일반적으로 앱이 연결할 각 외부 리소스에 대해 사용자 제공 서비스를 만들어야합니다. –

+0

내 응용 프로그램이 시작 단계에 머물러있는 이유를 알고 있습니까? 1 인스턴스 중 0입니다. – Jesse

관련 문제