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
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,