자바를 이용한 웹 서버 프로그래밍을 구현하는 방법은 여러단계의 발전을 거듭해서 스프링 MVC패턴 까지 오게 되었다.

SpringMVC_03.jpg

1)DispatcherServlet이 클라이언트 모든 요청을 받는다.

2)DispatcherServlet은 클라이언트의 요청에 맞는 컨트롤러(핸들러)를 찾아서 요청을 전달해야 한다.

3)DispatcherServlet은 HandlerMapping을 통해 요청URI에 매핑된 Controller(Handler)를 탐색한다.

4)컨트롤러를 실행하기 위해서 해당 컨트롤러에 맞는 Adapter 인터페이스를 찾기위해 HandlerAdapter를 탐색한다.

5)DispatcherServlet는 HandlerAdapter를 통하여 Controller(Handler)를 실행한다.

6)핸들러 어댑터에 컨트롤러 응답이 돌아오면 ModelAndView로 응답을 가공해 DispatcherServlet에게 반환한다.

7)논리적인 뷰네임( listArticles)을 반환받아 View Resolver를 통해 실제 뷰(listArticles.jsp)의 물리적 경로를 가져온다.

8)DispatcherServlet은 뷰를 호출하여 뷰가 렌더링(HTML) 하여 DispatcherServlet에 반환 하면 , DispatcherServlet이 클라이언트에게 반환한다.