ibatis(현 mybatis)에서 xml에 동적인 쿼리문으로 실행 할 수 있도록 만들었다.
resultClass를 HashMap으로 하여 List에 담아서 처리하도록 되어있다.
아니 그런데 한번은 실행이 잘 되는데 왜 두번째부터 계속 아래와 같은 에서 메세지가!!
(...나머지 에러 메세지 생략)
원래 '부적합한 열 이름'이라고 한다면 DTO에 선언해준 변수명과 쿼리문에 적은 컬럼 이름이 일치 하지 않아서 생기는 에러이지만, 이부분은 너무 기본적인 부분이라 백번도 넘게 확인했는데 이번 문제는 분명 좀 다른것이 있었다.
결론은 ibatis의 특성인 dto mapping이 일정치 않아서 맞지 않다고 나오는것.
하지만 난 동적인 쿼리를 HashMap으로 List에 담기때문에 DTO를 사용하지도 않는데???
결론은 xml의 쿼리문 선언에 remapResults="true" 를 추가해 주어야한다.
요렇게-
이유인 즉슨, 위 해당 쿼리가 실행될때 스 쿼리에 대한 정보를 그대로 가지고 있게 되는데 그 상태에서 쿼리만 바뀌다보니.. 안맞아서....
위 옵션은 정보를 캐시 하지 않도록 설정해주는 것이라고 합니다.
(예전에 한번 적었다가 뭐에 쓴느건지 몰라서 지웠더니.. 이것때문이었다니... ㅜㅠ)
참고 포스팅 :
http://ohgyun.com/280
http://kamkami.tistory.com/102
resultClass를 HashMap으로 하여 List에 담아서 처리하도록 되어있다.
아니 그런데 한번은 실행이 잘 되는데 왜 두번째부터 계속 아래와 같은 에서 메세지가!!
--- The error occurred while applying a result map.
--- Check the 쿼리ID - AutoResultMap.
--- Check the result mapping for the 컬럼명 property.
--- Cause: java.sql.SQLException: 부적합한 열 이름
--- Check the 쿼리ID - AutoResultMap.
--- Check the result mapping for the 컬럼명 property.
--- Cause: java.sql.SQLException: 부적합한 열 이름
(...나머지 에러 메세지 생략)
원래 '부적합한 열 이름'이라고 한다면 DTO에 선언해준 변수명과 쿼리문에 적은 컬럼 이름이 일치 하지 않아서 생기는 에러이지만, 이부분은 너무 기본적인 부분이라 백번도 넘게 확인했는데 이번 문제는 분명 좀 다른것이 있었다.
결론은 ibatis의 특성인 dto mapping이 일정치 않아서 맞지 않다고 나오는것.
하지만 난 동적인 쿼리를 HashMap으로 List에 담기때문에 DTO를 사용하지도 않는데???
결론은 xml의 쿼리문 선언에 remapResults="true" 를 추가해 주어야한다.
<select id="selectDownData" parameterClass="excel" resultClass="java.util.HashMap" remapResults="true">
요렇게-
이유인 즉슨, 위 해당 쿼리가 실행될때 스 쿼리에 대한 정보를 그대로 가지고 있게 되는데 그 상태에서 쿼리만 바뀌다보니.. 안맞아서....
위 옵션은 정보를 캐시 하지 않도록 설정해주는 것이라고 합니다.
(예전에 한번 적었다가 뭐에 쓴느건지 몰라서 지웠더니.. 이것때문이었다니... ㅜㅠ)
참고 포스팅 :
http://ohgyun.com/280
http://kamkami.tistory.com/102
'Write > Problem&Solution' 카테고리의 다른 글
파일(엑셀) 다운로드시 두번?!?!?! (0) | 2011.12.08 |
---|---|
대용량 처리시 POI사용시 얼마나 올라가다가 에러날까? (0) | 2011.12.06 |
administrator 사용자로 호스트 접속 실패: ERROR: Wrong password for user (0) | 2011.10.10 |
MSVCP100.dll, MSVCR100.dll 등의 파일 오류 (9) | 2011.09.08 |
웹표준을 지키며 table에 height 100% 를 적용하자!! (64) | 2011.08.10 |