예외 처리 경우 , 방법
- 메소드 내에서 예외 상황을 예측해서 처리하는 try - catch 문을 이용하는 방법
- 요구 사항에 의한 예외 처리
- 스프링 시큐리티에서 인터셉터로 잡아서 UnauthorizedException 같은 예외 처리
SpringBoot Exception 처리
- 웹에서 에러가 발생했을 경우에는 크게 세 가지 정도로 작업 가능
⚙ :: 에러 페이지
⚙ :: HTTP Status 4XX 에러 , 5XX 에러
⚙ :: HTTP 200 + Error Message
- 이렇게 Exception 을 처리하는 이유는 이미 SpringBoot 에 준비되어있음
@ExceptionHandler
- @Controller , @RestController 가 적용된 Bean 내에서 발생하는 예외를 잡아서 하나의 메소드에서 처리
- 이 어노테이션 쓰고 → 인자로 캐치하고 싶은 예외클래스를 등록해주면 끝남
ex)) -> @ExceptionHandler(CustomException.class)
⚙ :: 주의사항 , 알아둘 것
@Controller , @RestController 에만 적용 가능
(@Service 같은 빈에서는 안됨)
- 리턴 타입은 자유롭게 해도 된다
- @ExceptionHandler 를 등록한 Controller 에만 적용됨 → 다른 Controller 예외 처리 X