티스토리 뷰
두번째로 JDBC의 ResultSet 결과를 JsonArray로 변환하는 함수를 구현해 보겠습니다.
DataConverter 클래스에 추가됩니다.
효율적인 데이터 처리를 위해서 Oracle에서 데이터를 Fetch하는 Count와 JsonArray에 담길
데이터를 일치 시켰습니다.
그래서 아래 함수의 두번째 인자인 maxSize가 그 값입니다. 저는 보통 1000을 사용합니다.
오라클 11g 는 기본값이 20 입니다. 즉 20 rows 씩 클라이언트로 운반이 됩니다.
그리고 데이터 형은 일단 정수형과 문자열만 사용한다는 가정하에 함수를 만들어 보았습니다.
DataConverter.java
-------------------------------
public static JsonArray sqlToJson(ResultSet rset, int maxSize) throws Exception {
JsonArray jsonData = new JsonArray();
ResultSetMetaData = rmeta;
JsonObject jo;
int nRows = 0;
while(rset.next()) {
nRows++;
jo = new JsonObject();
for(int i=1; i<= rmeta.getColumnCount(); i++) {
if(rmeta.getColumnTypeName(i).equals("NUMBER") {
jo.addProperty(rmeta.getColumnName(i).toLowerCase(), rset.getInt(i));
} else {
jo.addProperty(rmeta.getColumnName(i).toLowerCase(), rset.getString(i));
}
}
jsonData.add(jo);
if(maxSize == nRows)
break;
}
return jsonData;
}
이렇게 해서 ETL프로그램에서 가장 중요한 DataConver 클래스에 2개의 함수를 구핸해 보았습니다.
3편에서는 SQL로 오라클에서 데이터를 fetch한 후 몽고디비에 효과적으로 적재하는 부분을 만들어 볼 생각입니다.
- Total
- Today
- Yesterday
- 오미크론
- node.js
- 르세라핌
- 배당급
- Pixel Pals
- 로니카 BCS
- 증권정보포털
- 코라나 19
- 홈 오피스
- yugabyteDB
- 파나소닉 비데 DL-EH10KWS
- JMW 헤어드라이기기
- 유가바이트디비
- 톡토기
- 고체 향수
- 별잉 빛나는 밤
- Sybase IQ
- GKRS
- weka
- VARIDESK
- 화분벌레
- 솔리드 쿨론
- 남설 팔찌
- Life Chair
- 별이 빚나는 밤
- 빈센트 반 고흐
- 브리다 정수기
- 루미큐브 종류
- 매직 트랙패드2
- 카카오 에드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |