• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

ExceptionHandler에서 BindingResult 에 값을 넣어줄순없나요?

22.02.25 14:45 작성 조회수 815

0

안녕하세요. 김영한 강사님.

BeanValidator로 검증한 내용은 자동으로 BindingResult에 값이 매핑되는데

서비스단에서 검증할때 오류 발생시 사용자 Exception 발생시켜 ExceptionHandler를 통해 공통으로 처리하고 싶습니다.

try catch로 감싸서 콘트롤러에서 BindingResult에 addFieldError 해주면 되는데 소스코드가 길어져서 

ExceptionHandler에서 처리하고싶은데 ExceptionHandler는 입력값으로 BindingResult를 따로 받지 않더라구요.

방법이 없을까요? 

답변 1

답변을 작성해보세요.

1

안녕하세요. 최순홍님

@ExceptionHandler로 바인딩 관련 예외를 잡으면 거기에서 BindingResult를 받을 수 있습니다.

다음으로 구글에 검색하시면 원하는 답을 바로 찾으실 수 있을거에요^^

@ExceptionHandler BindingResult

https://meetup.toast.com/posts/147

https://cchoimin.tistory.com/entry/Valid-%EC%99%80-ControllerAdvice%EB%A1%9C-DTO-%EC%98%88%EC%99%B8%EC%B2%98%EB%A6%AC%ED%95%98%EA%B8%B0

https://velog.io/@hellozin/Valid-%EC%98%88%EC%99%B8%EB%A5%BC-%EC%A0%84%EC%97%AD-%EC%BB%A8%ED%8A%B8%EB%A1%A4%EB%9F%AC%EB%A1%9C-%EA%B0%84%EB%8B%A8%ED%95%98%EA%B2%8C-%EC%B2%98%EB%A6%AC%ED%95%98%EA%B8%B0

감사합니다.