반응형

@notepad_jj2

츄르사려고 코딩하는집사입니다.


sun.misc.floatingdecimal.readjavaformatstring(floatingdecimal.java:2043)java.lang.NumberFormatException: For input string: "V" 문제 해결 방법

 

IBatis를 MyBatis로 변환하면서 <isEqual></isEqual> 태그를 사용하다가 MyBatis는 <if test=" "></if> 태그를 사용하게 된다. 여기 MyBatis에서는 test 값을 더블쿼터(")로 받기 때문에, jsp에서 던져지는 param을 받을 때 주의해야 한다.

 

jsp에서 V를 param에 담아 던지는데 "V"로 받아 던지고 있었고, xml에서는 아래 코드로 받고 있었다.

<if test="A == 'V'">
</if>

 

위와 같이, "V"를 던졌는데 XML에서 'V'로 하니 아래 오류가 발생했다.

sun.misc.floatingdecimal.readjavaformatstring(floatingdecimal.java:2043)

 

그래서, XML에서 원래의 코드를 아래의 코드처럼 변경했다.

<if test='A == "V"'>
</if>

 

싱글쿼터는 싱글쿼터끼리, 더블쿼터는 더블쿼터끼리 혼용이 되지 않기 때문에, 밖을 싱글 쿼터로 감싸고 있으면, 안에서는 더블 쿼터를 사용해야 한다.

 

반대로, 밖을 더블 쿼터로 감싸고 있으면 안에서는 싱글 쿼터를 사용해야 한다.

 

그렇기 때문에, test=를 싱글쿼터로 밖을 감싸고, V를 더블 쿼터로 감싸서 돌렸더니 문제가 해결됐다.

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기