본문 바로가기

면접준비

Spring MVC 에서의 예외 처리 기법에 대해서 설명해주세요.

Spring MVC에서는 다양한 예외 처리 기법을 제공합니다. 가장 흔히 사용되는 방법으로는 @ExceptionHandler와 @ControllerAdvice가 있습니다.

@ExceptionHandler는 특정 컨트롤러 내에서 발생하는 예외를 처리합니다. 예를 들어, NullPointerException이 발생했을 때 특정 응답을 반환하도록 할 수 있죠.

더 글로벌한 예외 처리를 위해서는 @ControllerAdvice를 사용합니다. 이를 통해 여러 컨트롤러에 걸쳐 적용되는 예외 처리 로직을 한 곳에서 관리할 수 있습니다.

또한, @ResponseStatus 어노테이션을 사용하여 특정 예외에 대한 HTTP 상태 코드를 지정할 수 있습니다. 이는 RESTful API를 설계할 때 특히 유용합니다.

입력 유효성 검사와 관련된 예외 처리에는 @Valid와 BindingResult를 함께 사용할 수 있습니다. 이를 통해 잘못된 입력에 대해 적절한 에러 메시지를 반환할 수 있습니다.

마지막으로, 더 복잡한 예외 처리 로직이 필요한 경우 HandlerExceptionResolver를 구현할 수 있습니다.

이러한 다양한 기법들을 상황에 맞게 조합하여 사용하면, 애플리케이션에서 발생하는 예외들을 효과적으로 처리하고 사용자에게 적절한 응답을 제공할 수 있습니다.