- what
@ExceptionHandler 뒤에 작성한 예외가 발생했을 때, 그 예외를 잡아서 하나의 메서드에서 처리할 수 있게 해주는 어노테이션. - when
예외를 처리할 때, 각 예외가 발생하는 시점에서 try-catch로 처리하거나 밖으로 throw해서 처리해야한다. 이렇게 하는 경우, 중복되는 코드도 많아지고 관리해야하는 포인트도 많아지게 된다. 따라서 @ExceptionHandler 어노테이션을 이용해 특정 예외에 대한 처리를 공통으로 처리할 수 있도록 책임을 넘겨주고 싶을 때 사용한다. - why
- 특정 예외에 대한 처리를 한 곳에서 담당하도록 할 수 있다.