NumberFormatException
mybatis에서 if,when 태그에서 비교값을 쓸 때
어떤 값이 문자열과 같은지 비교할 때 NumberFormatException이 발생했다.
<select id="something" >
<when test='searchType=="T"'> AND bo_title LIKE '%'||#{searchWord}||'%' </when> <!--가능-->
<when test="searchType=='T'"> AND bo_title LIKE '%'||#{searchWord}||'%' </when> <!--불가능-->
</select>
searchType은 String이다.
첫번째 경우 mybatis가 String searchType 과 String "T"값을 비교한다.
두번째 경우 mybatis가 String searchType 과 char 'T' 값을 비교한다.
자바는 char를 비교하려 할 때 'T'를 숫자로 바꿔서 비교한다.
'T'는 ASC코드표에서 116이다.
그리고 비교를 위해 String도 숫자로 바꾸려하는데 String을 숫자로 바꿀 수 없다.
그래서 NumberFormatException이 발생한다.