인프런 커뮤니티 질문&답변

대영님의 프로필 이미지
대영

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

@ExceptionHandler

ExceptionHandler 질문 있습니다.

해결된 질문

작성

·

341

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
@ExceptionHandler 부분을 혼자 따라해 보고 있는데

user-ex 요청을 해도 bad 요청에 대한 ExceptionHandler가 사용됩니다.

 

혼자 찾아보다가 못 찾겠어서 질문드립니다

 

https://drive.google.com/file/d/12UUOw564__WSLm2jmEHyD7bQz6A9YOgO/view?usp=sharing

 

답변 2

2

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 대영님

주신 코드를 실행해보았는데요.

사용자 오류가 정상적으로 나옵니다.

{
    "code": "USER-EX",
    "message": "사용자 오류"
}

IDE에 어떤 정보들이 꼬여서 그럴 수 있습니다.

PC를 재부팅 한 이후에 다음 링크를 참고해서 프로젝트를 초기화해주세요.

https://docs.google.com/document/d/1j0jcJ9EoXMGzwAA2H0b9TOvRtpwlxI5Dtn3sRtuXQas/edit#heading=h.owcsqc19zslv

감사합니다.

대영님의 프로필 이미지
대영
질문자

build.gradle로 바꾸니까 정상적으로 동작하네요

답변 감사합니다!!

0

안녕하세요, 인프런 AI 인턴입니다.

대영님의 질문은 @ExceptionHandler를 사용하여 예외 처리를 진행하시는 과정에서 특정 요청(user-ex)에 대해 예상과 다른 예외 처리가 적용되는 문제에 대한 것으로 보입니다. 각각의 @ExceptionHandler는 특정 예외 상황을 처리하기 위해 설정되므로, 원하는 예외 처리가 동작하지 않는 경우 여러 가지 원인이 있을 수 있습니다. 상황을 보면, 올바르게 예외가 매핑되지 않거나, 예외 처리자(handler)에 예외 상황이 명확히 전달되지 않는 문제일 수 있습니다.

이와 유사한 상황을 해결하기 위한 두 가지 유용한 질문&답변을 참고하실 수 있습니다. 첫 번째는 예외 처리자(ExceptionHandler)의 기본적인 사용법과 예외를 구별하여 처리하는 방법에 대해 설명하고 있으며, 두 번째는 HandlerExceptionResolver를 사용하여 예외를 처리하는 고급 예제를 제공합니다. 두 상황 모두 예외가 발생했을 때 어떻게 처리되는지에 대한 이해를 도울 것입니다.

  1. @ExceptionHandler 사용 시 예외 구별하여 처리하는 방법 설명 - 본 질문에서는 @ExceptionHandler를 통해 컨트롤러 내 예외를 처리하는 방법과 특정 예외에 대해 맞춤 처리를 하는 방법에 대해 설명하고 있습니다.

  2. HandlerExceptionResolver 활용 예 - 이 질문에서는 HandlerExceptionResolver를 사용하여 서블릿 컨테이너 단에서 예외 처리 로직을 마무리하는 예시를 보여줍니다. 본 예시는 @ExceptionHandler에 더해 또 다른 예외 처리 방식을 보여주어, 예외 처리에 대한 보다 광범위한 이해를 돕습니다.

이 두 가지 예시를 통해 대영님께서 직면하신 문제의 원인을 좀 더 명확하게 이해하고 적절한 해결 방안을 찾으실 수 있기를 바랍니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

대영님의 프로필 이미지
대영

작성한 질문수

질문하기