미운 오리 새끼의 우아한 개발자되기

[Spring MVC] Spring MVC 작동 원리 본문

Spring & Spring Boot/Spring

[Spring MVC] Spring MVC 작동 원리

Serina_Heo 2020. 9. 7. 14:39

발로 그려본 Spring MVC 작동 원리

 

1. Client가 Server에게 요청(Request)을 보내면 Dispatcher Servlet이 이 요청을 가로챔

2. Dispatcher Sevlet은 Handler Mapping에게 어떤 컨트롤러로 이 요청을 보내야 할 지 물어봄

3. 매핑된 메서드가 있는 Controller가 있다면 Handler Mapping이 이를 Dispatcher Servlet에게 넘김

4. 해당 Controller는 해당 요청을 처리할 비즈니스 로직이 담긴 Service를 주입(Dependency Injection) 받아 비즈니스 로직을 Service에게 위임 -> Service가 비즈니스 로직을 처리함(DB접근 등) -> 모든 비즈니스 로직을 끝낸 Service는 결과물을 Controller에게 줌.

5. 결과물을 받은 Controller는 필요에 따라 Model 객체에 결과물을 넣거나 어떤 View(.jsp) 파일을 보여줄 건지 정보를 담아 Dispatcher Servlet에게 줌.

6. Dispatcher Servlet은 View Resolver에게 받은 View에 대한 정보를 넘김.

7. View Resolver는 해당 jsp를 찾아 Dispatcher Servlet에게 알려줌.

8. Dispatcher Servlet은 응답할 View에게 Render를 지시.

9. View는 응답 로직을 처리함.

10. Dispatcher Servlet이 Client에게 Redering 된 View를 응답.

 

  • 참고

https://jeong-pro.tistory.com/96?category=793347