domain exception

사용자 정의 예외 응답

도메인 예외는 서비스 코드에 업무 의미를 남기고, 필터는 이를 클라이언트 응답 규격으로 바꾸는 번역기 역할을 한다.

분리 원칙: 서비스는 의미, 필터는 형식UserAlreadyExists 같은 이름이 오류 의도를 드러낸다.

도메인 오류가 API 응답이 되는 순서

1Service

중복 사용자 같은 업무 조건을 발견한다.

2Exception

UserAlreadyExistsException처럼 의미 있는 예외를 던진다.

3Filter

예외를 code, status, message로 매핑한다.

4Client

프론트엔드는 code를 기준으로 안내나 재시도를 결정한다.

응답 설계 포인트

01code

프론트엔드가 분기할 안정적인 문자열을 제공한다.

02message

사용자가 이해할 문장으로 내부 구현을 감춘다.

03details

입력 필드 오류처럼 복구에 필요한 최소 정보만 담는다.