MyBatis

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

과일가게 개발자 2014. 8. 14. 03:00
반응형


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 이후 버전으로 업데이트 추천 !!