작성
·
326
0
@ResponseStatus 어노테이션을 단 커스텀 예외를 만들어서 사용하려고 할 때,
ControllerAdvice에 등록해서 사용하면 예외를 만들 때 구현했던 내용이 적용되지 않습니다.
예를 들어 커스텀 예외에서 ResponseStatus를 HttpStatus.NOT_FOUND로 했더라도 ControllerAdvice에서 return new ResponseEntity<>(e.getMessage(), HttpStatus.BAD_REQUEST)를 반환하게 하면 덮어씌워지는 것 같은데,
기존에 만들어둔 예외를 사용하고 싶다면 강의에서처럼 ErrorResult같은 객체를 만들어서 사용해야 하는 건가요?
그리고 @ResponseStatus의 reason인자에 적은 오류 이유를 꺼내서 사용하려면 어떻게 하면 되나요?
답변 1
0
안녕하세요. koreakkrea12님
new ResponseEntity가 우선권을 가지게 됩니다.
추가로 해당 예외에서 @ResponseStatus 애노테이션에 대한 정보를 찾고 싶으면
스프랑 자바 애노테이션 조회로 검색하시면 원하는 답을 찾으실 수 있을거에요.
감사합니다.