Exception 처리하기

예외를 처리 하기 위해 따로 패키지와 클래스를 만들었다.

에러가 나면 에러 추적하는 내용이 길게 쫙 ~~ 나타나는게 너무 복잡해보이고 지저분해서 깔끔하게 만들고자 한다!!

@ControllerAdvice // 모든 Exception 발생시 이 클래스로 오게 만들기
@RestController
public class GlobalExceptionHandler {

    @ExceptionHandler(value = IllegalArgumentException.class)// IllegalArgumentException 발생시 해당 메소드
    public String handleArgumentException(IllegalArgumentException e) {
        return "<h1>" + e.getMessage() + "</h1>";
    }
}

IllegalArgumentException 에만 해당될 것이다!


에러가 깔끔하다 ㅎ

만약 모든 Exception을 잡고 싶다면,

@ControllerAdvice // 모든 Exception 발생시 이 클래스로 오게 만들기
@RestController
public class GlobalExceptionHandler {

    @ExceptionHandler(value = Exception.class)// IllegalArgumentException 발생시 해당 메소드
    public String handleArgumentException(Exception e) {
        return "<h1>" + e.getMessage() + "</h1>";
    }
}

모든 예외의 부모인 Exception 을 사용하면 된다.

좋은 웹페이지 즐겨찾기