스프링에서 아래의 그림과 같이 url 값을 검증하려고 @Postive라는 어노테이션을 붙였다.
값에 음수가 들어오는 것을 원하지 않아서 위와 같이 @Postive 어노테이션을 붙였다.
이렇게 요청을 보내면 오류가 발생해야 하나....
!?!??!?!?!?!
왜 이런 현상이 발생하는 것일까?
요약하자면 우리가 평소에 값을 검증하기 위해서 사용하는 Validation Bean은 JSR 303에 의해서 만들어 진 것이다. 이 JSR 303이라는 규칙에서는 Controller에서 Validation을 가정하고 있지 않다. 이러한 이유로 url값을 검증하려면 스프링에 따로 존재하는 @Validated 라는 어노테이션을 Controller에 아래의 그림과 같이 붙여줘야 한다.
이렇게 어노테이션을 붙이고 다시 실행하면?
성공적으로 오류가 발생한다!