@ControllerAdvice에서 사용하는 요소는 다음과 같습니다.

    ▼ 표 10-5 @ControllerAdvice에서 사용하는 요소

    요소

    타입

    설명

    annotations

    Class<? extends Annotation>[]

    애너테이션의 배열입니다.

    assignableTypes

    Class<?>[]

    클래스의 배열입니다.

    basePackageClasses

    Class<?>[]

    @ControllerAdvice가 적용된 클래스가 지원할 컨트롤러를 선택할 수 있는 패키지를 지정합니다.

    basePackages

    String[]

    기본 패키지의 배열입니다.

    value

    String[]

    basePackages 속성의 별칭입니다.

    @ControllerAdvice를 선언한 클래스에서는 컨트롤러에서 설정하는 @ExceptionHandler, @ModelAttribute, @InitBinder가 선언된 메서드를 사용할 수 있습니다.

    다음은 @ControllerAdvice를 선언한 클래스 안의 예외 처리를 위한 메서드에 @ExceptionHandler를 설정한 예입니다. 여기에서 @ControllerAdvice를 선언한 클래스 안에는 @ExceptionHandler가 선언된 메서드를 여러 개 설정할 수 있고, 예외가 발생하면 어떤 예외 처리를 할지 value 옵션 요소에 설정해 주면 됩니다.

     

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.