JAVA/Debug

java.lang.ClassCastException: java.math.BigDecimal 처리하기

nineDeveloper 2014. 8. 8. 16:11
728x90
반응형

DB에서 HashMap 형태로 데이터를 받아서 데이터 형변환을 하다보면 

java.lang.ClassCastException: java.math.BigDecimal Exception이 발생하는

경우가 있다.

 

위와 같은 Exception이 발생하는 이유는 Oracle에서 컬럼이 Number값으로 설정되어 있을

경우에 myBatis를 통해 Resultset을 반환하게 되면 Oracle Number이 Mapping 되는 Java

Type이 BigDecimal 이다.

 

그래서 아래처럼 막바로 String 으로 Cast 할 경우 Exception 이 발생하게 된다.

 





위와 같은 경우는 BigDecimal 타입으로 Casting 하거나 String.valueOf 로 String 형으로 변경

해서 사용하면 된다.

 

String일 경우는 String.valueOf

Integer일 경우는 Integer.valueOf


 

모두 즐거운 프로그램 되세요^^

 

728x90
반응형