유혁의 개발 스토리

[Spring] Spring Framework 구동순서 완벽정리 본문

Spring

[Spring] Spring Framework 구동순서 완벽정리

유혁. 2021. 11. 4. 17:32

* 시작하기 전 

 : Spring Framework 구동순서를 정리하면서, 좋은 설명글들이 많지만 한눈에 이해하기 너무 어려워서 정리해본다. 

   이 내용을 통해서 구동순서의 전체 흐름을 파악하면 좋을 것 같다.

 

 

Spring 실행순서

 

 

 

1. 웹 어플리케이션이 실행되면 Tomcat(WAS)에 의해 web.xml이 로딩. 

 

 

2. web.xml 에 등록되어있는 ContextLoaderListener 생성.

 : ContextLoaderListener는 ServletContextListener 인터페이스를 구현하고있으며, ApplicationContext를 생성한다. 

 

 

* ApplicationContext  

 : IoC 엔진이며, 빈의 생명주기를 담당한다. 

 

 

3. ContextLoaderListener 가 root-context.xml 을 로딩.

 

* ContextLoaderListener

 : 서블릿을 초기화하는 용도로 사용

   contextConfigLocation 파라미터를 사용하여, load할 수 있는 설정파일을 지정할 수 있다. 

 

 

4. root-context.xml 등록되어 있는 설정에 따라 Spring Container(ROOT)가 구동. 

 

 

5. 클라이언트로부터 Web Application에 요청.

 

 

6. DispatcherServlet 생성. 

 

 

7. DispatcherServlet 이 servlet-context.xml 을 로딩. 

 

 

8. 두번째 Spring Container 구동되며, 응답에 맞는 PageController들이 동작한다.

 

 

 

 

※ 출처 블로그 

https://12bme.tistory.com/555

https://javannspring.tistory.com/231