[mybatis] NumberFormatException

Published: by Creative Commons Licence

마이바티 NumberFormatException 해결방안

문제

nested exception is org.apache.ibatis.exceptions.PersistenceException: 
### Error querying database.  Cause: java.lang.NumberFormatException: For input string: "Y"
### Cause: java.lang.NumberFormatException: For input string: "Y"
<if test="confirmYn != null and confirmYn == 'Y'">
    and confirmYn is not null
</if>

해결

해결은 아래처럼, 자바 문자열 비교와 같이 해결하면 된다. ""(쌍따옴표)는 문자열, ''(홑따옴표)CHAR를 의미한다.

 <if test='confirmYn != null and confirmYn.equals("Y")'>
    and confirmYn is not null
</if>

아래처럼 홑따옴표, 쌍따옴표의 위치가 바뀌면 에러가 나니 주의

 <if test="confirmYn != null and confirmYn.equals('Y')">
    and confirmYn is not null
</if>