Programing/Framework
[Spring] mvc 예외처리
나모찾기
2020. 2. 7. 14:43
스프링의 mvc에서 예외처리는 실무에서 보면 @ControllerAdvice 을 이용해서 많이 한다.
아래와 같이 밑바닥 부터 예외 처리기를 구현해도 무방하다.
@RestControllerAdvice(basePackages = {"com.tistory.namocom.controller"})
public class NamoExceptionHandler {
하지만 편의를 위해 스프링은 미리 ResponseEntityExceptionHandler을 만들어놓았다.
public abstract class ResponseEntityExceptionHandler {
추상클래스이므로 상속을 받아 사용이 가능하다.
@RestControllerAdvice(basePackages = {"com.tistory.namocom.controller"})
public class NamoExceptionHandler extends ResponseEntityExceptionHandler {
스프링의 예외처리 리졸버
스프링은 예외처리 리졸버를 DefaultHandlerExceptionResolver 를 기본으로 사용한다.
아래와 같은 구조로 되어 있다.