반응형
RESTAPI 개발 중에 아래와 같은 에러가 발생하였다.
argument type mismatch
Database에서 가져오는 데이터와 자바에서 받는 DTO에서 자료형이 다른것은 에러 문구만 봐도 이해가 간다.
하지만 특이 케이스가 있어서 포스팅을 작성한다.
자바 17에서는 Mysql 의 SUM 함수의 결과를 DTO String 으로 잘 받았다.
하지만 자바 21에서는 똑같은 코드로 돌리니 위와 같은 에러가 발생하였다.
결과를 .getClass() 로 형식을 보니 BigInteger 로 분류가 되었다.
Long으로도 받아질 줄 알았는데 Long으로 받아도 마찬가지였다.
결국 Object를 사용하거나 BigInteger로 받아서 해결하였다.
자바 버전이 올라갈수록 자료형에 대해서 엄격해 진다고 들었는데 이것도 하나의 일종인가 싶다.
반응형
'IT > Java' 카테고리의 다른 글
Virtual Thread 란? (14) | 2024.10.30 |
---|---|
콜백 패턴(Callback Pattern) (17) | 2024.10.29 |
전략 패턴 예제(Strategy Pattern) (15) | 2024.10.25 |
템플릿 메서드 패턴 예제(Template Method Pattern) (12) | 2024.10.24 |
익명클래스 -> Lambda(람다식) 변환 예제 (15) | 2024.10.22 |
댓글