본문 바로가기

MyBatis

MyBatis resultType으로 HashMap 지정시 Null 컬럼 누락 문제

반응형


resultType으로 hashmap 지정시 value값이 null일때 컬럼이 누락되는 문제가 있다.

누락되도 상관은 없지만 꼭 필요한 경우가 있어서 그에 관한 해결책을 정리해 보았다.



1. MyBatis 3.2.2 이후 버전 사용
   3.2.2 버전부터 해당 문제 해결을 위해 세팅값을 지원해 준다.
   MyBatis 설정파일에 아래 내용을 추가해 준다.

  <settings>
      <setting name="callSettersOnNulls" value="true"/>
  </settings>


2. null이 예상되는 컬럼에 ifnull, nvl과 같은 null 처리를 해준다.
  - 예상되는 컬럼이 많을경우 추천안함.


3. myBatis의 원 소스를 받아 TypeAliasRegistry 부분의 hashmap 부분을 수정한다.
  - 생각보다 귀찮음.






3.2.2 이후 버전으로 업데이트 추천 !!

'MyBatis' 카테고리의 다른 글

MyBatis 커넥션 풀 설정  (0) 2014.08.27
MyBatis insert, update NULL 처리  (3) 2014.08.19
MyBatis3 typeAlias 사용하기  (1) 2014.08.11
MyBatis3 동적 쿼리(if, choose)  (2) 2014.08.10
JSP + MyBatis3 트랜잭션 처리  (0) 2014.08.10