티스토리 뷰

dev

log4sql과 ojdbc6.jar

IT's me 2017. 10. 22. 09:22

본인 경험 직접 작성


로컬 환경에서 스프링 배치 개발 도중 쿼리를 디버깅 하려고 하였으나 어떻게 찍어도 바인딩된 쿼리가 나오질 않는다. 하여 예전에 잘 사용했던 log4sql 을 사용해보려고 하니 적용이 안되는것이다. 메뉴얼대로 driverClassName을 변경하였지만 안된다. 이리저리해보다가 비슷한 log4jdbc가 있다고 해서

적용해보았지만 쿼리가 정렬되지 않고 나와서 마음에 안듬. 또한 이상한 로그들도 추가 됨...

다시 log4sql로 돌아와서 사용하려고 이리저리 찾아본 결과...


1. odbc6.jar로는 사용이 불가함.

  ojdbc6은 자바 1.6이상에서 사용할 수 있는 오라클 드라이버임. 또 이 버전이 오라클 11g를 잘 지원하는 듯 함


하여 odbc14.jar로 버전을 낮추어 보았더니 문제없이 동작함.

하지만 이놈의 코딩결벽증세가 도져서 그런지 odbc6.jar로 꼭 사용하고 싶었음.

log4sql 소스를 다운받아서 이리저리 뒤져봄. 스프링에서 기본적으로 사용하는 풀 소스도 뒤져봄

BasicDataSource. 바로 이놈과 ojdbc6.jar의 궁합이 맞질 않았던 것이다.


2. log4sql.jar를 수정하여 odbc6.jar 에서 사용할 수 있었다.

  - BasicDataSource소스 내에 url로 Driver를 가져오도록 하는 부분이 있었고, 이 부분과 odbc6.jar이 맞질 않음. 하여 url을 변경하고 이를 다시 log4sql에서 치환하는 방법을 써서 해결함.

현재 url 세팅 : jdbc:log4sql:oracle:thin:@[주소]


3. 추가적으로 addBatch를 이용하면 오류가 남.

  - 해결을 해야될 문제임. log4sql.jar를 수정해서 LoggablePreParedStetement를 이용한다면

해결이 될듯 싶음...


댓글
최근에 올라온 글
최근에 달린 댓글