[TIL] MethodArgumentNotValidException, ConstraintViolationException
@ControllerAdvice로 예외처리를 만들고 테스트를 하다가
@Valid는 MethodArgumentNotValidException 예외처리를 발생한다고 하던데
MethodArgumentNotValidException이 발생하지 않고
ConstraintViolationException로 계속해서 에러를 발생하고 있어서
왜 그러지…? 하고 생각을 하고 있었다.
나는 DTO에 @NotNull과 같은 어노테이션을 붙이지 않고 있었다.( 엔티티에만 해놨다.. )
그래서 계속해서 엔터티 관련 예외를 발생하고 있었다. (ConstraintViolationException)
정리하자면
ConstraintViolationException - 엔터티 예외
MethodArgumentNotValidException - DTO 예외