iBatis에서 쿼리 로그 가독성 있게 뿌려주기
1. iBatis 파일을 다운로드
- http://ibatis.apache.org/javadownloads.cgi
2. 대상 소스 수정
- Eclipse에서 New>Project>Java Projec를 선택하여 프로젝트를 생성
- C:\iBatis\bin : 컴파일 디렉토리
- C:\iBatis\src 컴파일 소스 디렉토리
- 수정 대상 소스를 C:\iBatis\src 에 카피한다음 C:\iBatis\bin으로 빌드 패스 지정해서 빌드한다.
- C:\iBatis\bin 디렉토리에 다운 받은 ibatis-2.3.0.677.jar파일을 압축푼다.
4. jar 재묶음
- C:\iBatis\bin 디렉토리로 이동하여 jar cvf ibatis-2.3.0.677_mimul.jar ./ 실행하여 jar파일을 재생성함
- ibatis-2.3.0.677_mimul.jar 파일을 ProjectRoot\WEB-INF/lib에 카피함
5. 결과 로그
쿼리를 쉽게 한눈에 볼수 있게됩니다. ^^
- http://ibatis.apache.org/javadownloads.cgi
2. 대상 소스 수정
- com.ibatis.common.jdbc.logging.ConnectionLogProxy.java
//log.debug("{conn-" + id + "} Preparing Statement: " +
removeBreakingWhitespace((String) params[0]));
log.debug("{conn-" + id + "} Preparing Statement: " + ((String) params[0]));
...
//log.debug("{conn-" + id + "} Preparing Call: " +
removeBreakingWhitespace((String) params[0]));
log.debug("{conn-" + id + "} Preparing Call: " + ((String) params[0]));
- com.ibatis.common.jdbc.logging.PreparedStatementLogProxy.java
//log.debug("{pstm-" + id + "} Executing Statement: " +
removeBreakingWhitespace(sql));
log.debug("{pstm-" + id + "} Executing Statement: " + (sql));
- com.ibatis.common.jdbc.logging.StatementLogProxy.java
//log.debug("{stmt-" + id + "} Statement: " +
removeBreakingWhitespace((String) params[0]));
log.debug("{stmt-" + id + "} Statement: " + ((String) params[0]));
- com.ibatis.sqlmap.engine.mapping.sql.SqlText.java
//this.text = text.replace('\r', ' ').replace('\n', ' ');
this.text = text;
- com.ibatis.sqlmap.engine.mapping.sql.stat.StaticSql.java
//this.sqlStatement = sqlStatement.replace('\r', ' ').replace('\n', ' ');
this.sqlStatement = sqlStatement;
- Eclipse에서 New>Project>Java Projec를 선택하여 프로젝트를 생성
- C:\iBatis\bin : 컴파일 디렉토리
- C:\iBatis\src 컴파일 소스 디렉토리
- 수정 대상 소스를 C:\iBatis\src 에 카피한다음 C:\iBatis\bin으로 빌드 패스 지정해서 빌드한다.
- C:\iBatis\bin 디렉토리에 다운 받은 ibatis-2.3.0.677.jar파일을 압축푼다.
4. jar 재묶음
- C:\iBatis\bin 디렉토리로 이동하여 jar cvf ibatis-2.3.0.677_mimul.jar ./ 실행하여 jar파일을 재생성함
- ibatis-2.3.0.677_mimul.jar 파일을 ProjectRoot\WEB-INF/lib에 카피함
5. 결과 로그
[2007-12-10 19:33:54,578] DEBUG : Executing Statement:
SELECT mseq, menuid, title, imgurl, vodurl, use, chgdate
FROM mimul
WHERE mseq = ?
[2007-12-10 19:33:54,578] DEBUG : Parameters:[1]
[2007-12-10 19:33:54,578] DEBUG : Types:[java.lang.Integer]
[2007-12-10 19:33:54,593] DEBUG : [MSEQ, MENUID, TITLE, IMGURL, VODURL,
USE, CHGDATE]
[2007-12-10 19:33:54,593] DEBUG : [1, 1,
Oxford Reading Tree, main_btn1_1_on.png,
main_btn1_1_off.png, 2, 200712071310466]
쿼리를 쉽게 한눈에 볼수 있게됩니다. ^^








