MockMvc VS 실제 Servlet Container
벨만포드 알고리즘
개요
최단거리 알고리즘 분류
모든 간선이 양수인 경우
다익스트랑 알고리즘
음수 간선이 있는 경우
벨만포드 알고리즘
모든 노드 간의 최단거리를 구해야 하는 경우
플로이드워셜 알고리즘
Dispatcher Servlet을 활용해 매핑되는 핸들러 구하기
개요
최근에 스프링부트를 활용한 서버 Application 프로젝트를 진행하던 도중, 아래와 같은 요구사항이 추가되었다.
인터셉터를 통해 404 에러를 처리하라.
그러기 위해선, 서버로 전달된 HTTP 요청 메시지의 URI(Endpoint)에 따라, 어떤 컨트롤러가 매핑되는지 분석한다.
그리고 그 결과를 기반으로 응답 메시지를 다르게 전송한다.
단순히 해당 요구사항만 본다면, “컨트롤러 계층이나 서비스 계층에서 처리를 하면 되는 간단한 문제아닌가?” 라고 생각할 수 있다.
하지만 이 로직을 인터셉터 단에서 처리하도록 해야하는 상황이었다.