해결된 질문
작성
·
484
·
수정됨
1
안녕하세요. 우선 좋은 강의 감사드립니다.
수업을 따라 진행하다가, quantity 검증과 관련해 질문이 있습니다.
일부러 수량(quantity)에 큰 값을 넣어봤는데요, 저장을 누르면 이 숫자를 문자로 인식하는 것 같습니다. 99999로 입력하면 올바른 에러가 발생하는데요, 캡쳐본에 있는 값으로 넣게 되면
2023-01-23 12:23:56.797 WARN 21288 --- [nio-8080-exec-2] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.validation.BindException: org.springframework.validation.BeanPropertyBindingResult: 1 errors
Field error in object 'item' on field 'quantity': rejected value [9999999999999]; codes [typeMismatch.item.quantity,typeMismatch.quantity,typeMismatch.java.lang.Integer,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [item.quantity,quantity]; arguments []; default message [quantity]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'java.lang.Integer' for property 'quantity'; nested exception is java.lang.NumberFormatException: For input string: "9999999999999"]]
이러한 에러가 발생하게됩니다.
혹시 이런 에러가 발생하는 이유가 있나요?
아 혹시 integer의 최대 숫자보다 커서 문자로 인식이되는건가요?
감사합니다.
정확하게 알려주셔서 감사합니다!