2014-10-30 4 views
1

일부 JSON 메트릭 데이터를 Oracle 데이터베이스로 스트리밍하기 위해 SpringXD를 사용하려고합니다.SpringXD JSON 파서에서 Oracle DB

여기에서이 예제를 사용하고 있습니다 : SpringXD Example

HTTP 호출이 이루어지고 : EarthquakeJsonExample

내 쉘 cmd를.

stream create earthData --definition "trigger|usgs| jdbc --columns='mag,place,time,updated,tz,url,felt,cdi,mni,alert,tsunami,status,sig,net,code,ids,souces,types,nst,dmin,rms,gap,magnitude_type' --driverClassName=driver --username=username --password --url=url --tableName=Test_Table" --deploy 

이 JSON 응답의 속성 부분 만 지정된 테이블 열에 캡처하고 싶습니다. 나는 그것이 나에게 해싱에 오류를주지 않는 지점에 이르렀지만 대신에 열에 널 값을 넣는다.

내 문제는 JSON 자체의 구문 분석이라고 생각합니다. 실제로 속성은 Features 배열에 있습니다. SpringXD가 나에게 이것을 구별 할 수 있습니까? 아니면 맞춤형 프로세서를 작성해야합니까?

다음은 성공적인 cmd 후에 데이터베이스가 어떻게 생겼는지 보여줍니다.

What Is put into my database

어떤 조언을 ? 이 방식으로 JSON을 파싱하는 방법에 익숙하지 않고 SpringXD 자체에서 더 많은 문서 또는 예제를 찾는 방법을 모르는 경우가 있습니다. SpringXD Doc

답변

2

는 JDBC 싱크 변압기 키/값의 맵으로 변환 할 수있는 간단한 문서를 예상 : 여기

는 문서에 대한 참조이다. 업스트림을 업스트림에 추가해야합니다 (예 : usgs 프로세서 또는 별도의 프로세서). #jsonPath 표현식을 사용하여 속성 키를 추출하고 페이로드로 만들 수 있습니다.