[우아한테크코스] 9월 12일 TIL

less than 1 minute read

[Spring] MVC 구조 완벽 이해하기

MVC model 1

모든 요청을 JspView가 처리한다.

image

MVC model 2

  1. dispatcher servlet 생성

    annotation으로부터 controller를 찾아 handlerMapping, handlerAdapter에 추가해둔다.

  2. 요청

    handlerMapping으로부터 적절한 controller를 찾아 handlerAdapter를 이용해 실행한다.

  3. 응답

    적절한 응답을 렌더링

image

image

미션 흐름

  1. 포트 할당

  2. tomcat 생성

    tomcat이란? web application server로 동적 컨텐츠를 처리하도록 한다. 웹 서버와 연동하여 실행할 수 있는 자바 환경을 제공하며 jsp와 servlet을 실행할 수 있도록 하는 서블릿 컨테이너 역할을 수행한다.

    image

  3. 컨텍스트 생성 후 tomcat 시작

    tomcat으로부터 패키지에 따라 컨텍스트를 생성한다.

    생성한 컨텍스트를 실행한다.

  4. tomcat이 시작되면 WebApplicationInitializer의 구현체인 AppWebApplicationInitializer로 어플리케이션이 시작된다.

    1. DispatcherServlet 생성
    2. handlerMapping, handlerAdapter 추가
    3. servletContext에 dispatcherServlet 추가
  5. 요청

    요청이 들어오면 mapping에서 찾아서 adapter를 찾아 handle 한다.

    Handle 하면 어노테이션이 달려있는 경우는 그 controller 함수를 실행해 응답과 함께 렌더링한다.

    그게 아니라면 JspView로부터 view를 찾아 렌더링한다.