404 Not Found
요청한 resource가 현재 존재하지 않는다.
모든 RuntimeException을 400으로 숨기지 않고 client가 고칠 수 있는 실패와 운영자가 조사할 결함을 분리한다.
요청한 resource가 현재 존재하지 않는다.
resource의 현재 상태와 command가 충돌한다.
client가 수정 가능한 field 오류를 반환한다.
내부 정보는 숨기고 원인 로그와 trace를 남긴다.
핵심: 상태 코드는 예외 클래스 이름이 아니라 실패 의미와 다음 행동을 표현해야 한다.