What is Dispatcher Servlet in Spring? - GeeksforGeeks
Spring MVC
는 중앙 서블릿인 DispatcherServlet
이 요청 처리를 위한 공유 알고리즘을 제공합니다.
반면 실제 작업은 구성 가능한 대리자(delegate, 위임) components
에 의해 수행됩니다. 이를 Front Controller
패턴이라고 부릅니다.
Front Controller
는 주로 서블릿 컨테이너의 제일 앞에서 서버로 들어오는 클라이언트의 모든 요청을 받아서 처리해주는 컨트롤러로써, MVC 구조에서 함께 사용되는 디자인 패턴입니다.
이 모델은 유연하고 다양한 워크플로우를 지원합니다.
Spring MVC는 DispatcherServlet이 등장함에 따라 web.xml의 역할을 상당히 축소시켜주었습니다. 과거에는 모든 서블릿을 URL 매핑을 위해 web.xml에 모두 등록해주어야 했지만, dispatcher-servlet이 해당 어플리케이션으로 들어오는 모든 요청을 핸들링해주고 공통 작업을 처리면서 상당히 편리하게 이용할 수 있게 되었습니다. https://mangkyu.tistory.com/18
(정적자원과 동적자원 분할 처리)두번째 방법은 Dispatcher Servlet이 요청을 처리할 컨트롤러를 먼저 찾고, 요청에 대한 컨트롤러를 찾을 수 없는 경우에, 2차적으로 설정된 자원(Resource) 경로를 탐색하여 자원을 탐색하는 것입니다. 이렇게 영역을 분리하면 효율적인 리소스 관리를 지원할 뿐 아니라 추후에 확장을 용이하게 해준다는 장점이 있습니다. https://mangkyu.tistory.com/18
DispatcherServlet
은 모든 Servlet
과 마찬가지로