-
자바 JAVA Integer의 최대값 2147483647Web Programming 2023. 9. 7. 16:31728x90반응형
자바에서 숫자 합계나 금액이나 이런 것들을 위해 소스 코드를 작성하다 보면 값을 DB 에 적재할 때 Integer 로
사용했단 변수의 값들이 2147483647 로 자꾸 들어가는 경우가 있다.
원인은 Integer 가 최대 허용할 수 있는 값이 2147483647 이기 때문에 그렇다.
그래서 Integer 대신에 최대값이 더 큰 long 을 사용하여 처리해주었다.
오류가 발생했던 상황은 엑셀 업로드에서 cell 타입을 switch 해주는 부분이 있는데
switch(cell.getCellType()) { case FORMULA: value = cell.getCellFormula(); break; case NUMERIC: /*value = (int) cell.getNumericCellValue()+"";*/ value = (long) cell.getNumericCellValue()+""; break; case STRING: value = cell.getStringCellValue()+""; break; case BLANK: value = cell.getBooleanCellValue()+""; break; case ERROR: value = cell.getErrorCellValue()+""; break; default: }
value = (int) cell.getNumericCellValue()+""; 이 부분에서 2147483647 로 최대값이 허용되지 않아서
발생한 문제였고 위에 코드처럼 long 으로 변경 후 정상적을 숫자 값이 DB에 insert 되었다.
남들한테는 간단한 것들이겠지만 Integer의 최대값 2147483647 문제가
해결이 되어서 다행이고 우선 기록해 두기로 했다.
끝!!
728x90반응형'Web Programming' 카테고리의 다른 글
구글 크롬 개발자 모드 테마 변경 (0) 2023.09.19 무료 차트 아파치 echarts (0) 2023.09.19 Calendar 클래스 날짜 더하기 (0) 2023.09.07 자바스크립트가 제대로 먹히지 않을 때 (0) 2023.09.07 전자정부프레임워크를 사용하는 장점 (0) 2023.09.06