[Spring] | Spring Web MVC 동작원리 정리

제롬·2022년 10월 25일
0

Web MVC

목록 보기
3/3

Spring Web Application의 실행순서

  1. 웹 어플리케이션이 실행되면 Tomcat(WAS)에 의해 web.xml이 로딩된다.
  2. web.xml에 등록되어 있는 ContextLoaderListener(자바 클래스)가 생성된다. ContextLoaderListener 클래스는 ServletContextListener 인터페이스를 구현하고 있으며, ApplicationContext를 생성하는 역할을 수행한다.
  3. 생성된 ContextLoaderListener는 root-context.xml을 로딩한다.
  4. root-context.xml에 등록되어 있는 Spring Container가 구동한다. 이 때 개발자가 작성한 비즈니스 로직(Service)에 대한 부분과 DB 로직(DAO), VO 객체들이 생성된다.
  5. 클라이언트로부터 요청(request)가 들어온다.
  6. DispatcherServlet(Servlet)이 생성된다. DispatcherServlet은 FrontController의 역할을 수행한다. 클라이언트로부터 요청온 메시지를 분석하여 알맞은 PageController에게 전달하고 응답을 받아 요청에 따른 응답을 어떻게 할지 결정한다. 실질적인 작업은 PageController에서 이루어진다. 이러한 클래스들을 HandlerMapping, ViewResolver 클래스라고 한다.
  7. DispatcherServlet은 servlet-context.xml을 로딩한다.
  8. 두 번째 Spring Container가 구동되며 응답에 맞는 pageController들이 동작한다. 이 때 첫번째 Spring Container가 구동되면서 생성된 DAO, VO, Service 클래스들과 협업하여 작업을 처리한다.

0개의 댓글