https://www.lissapark91.com/2018/10/javalangclasscastexception.html
MyBatis로 Oracle 데이터를 가져올 때 Map으로 받아서 가져올 경우 종종 발생한다.
더 자세히 살펴보면 Oracle에서 데이터 타입이 number인 데이터를 Java에서 Integer로 받을 때 발생하는데
단순히 casting을 (Integer)와 같이 하였다면 위 Exception이 발생한다.
Oracle 타입 Number의 값을 MyBatis 통해 Map의 Integer/Double (Map은 int/double 타입 선언 불가) 타입으로 받아 VO 또는 DTO의 int/double 타입 변수에 값 선언하려 할 때 종종 발생함
commentUserDTO.setStarRatingCnt(Integer.parseInt(String.valueOf(starRatingAvgCnt.get("cnt"))));
-> String.valueOf()를 이용해 숫자값을 문자열로 변환한 후, Integr.parseInt 통해 int로 변환해줌