처음부터 차근차근

Spring Framework 동작 원리와 HandlerMapping, view resolver 본문

Framework/Spring

Spring Framework 동작 원리와 HandlerMapping, view resolver

_soyoung 2021. 9. 14. 22:55
반응형
HandlerMapping

 

HandlerMapping이란 클라이언트가 요청한 주소를 처리할 controller을 지정하는 역할을 하는 것이다.

 

view resolver

 

view resolver란 controller에서 받아온 view파일 명을 경로로 만들어 찾는 역할을 하는 것이다.

 

Spring Framework 동작 원리

1. 클라이언트 요청

2. web.xml 실행

3. web.xml에서 DispatcherServlet이 <url-pattern>의 형태로 들어오는 요청을 가로채고 servlet-context.xml을 실행

4. Controller클래스를 bean객체로 만듦

5. Handlermapping이 만들어진 bean객체 중에서 클라이언트의 요청 주소와 맞는 controller 찾음

6. controller 연결

7 ~ 10. 비즈니스 로직 수행

11. controller의 모든 코드를 수행하고 리턴값으로 view의 이름을 가지고 servlet-context.xml로 감

12. 리턴받은 view이름을 가지고 view resolver에서 경로를 만들고, view를 찾음

13. DispatcherServlet으로 넘김

14. 클라이언트로 view출력

 

2021.09.14 - [에러] - Eclipse Spring MVC 프로젝트 실행할 때 404 error(Spring 동작 원리)를 해결하다가 공부하게된 내용이다. controller에서 view resolver로 넘기는 곳(11번)부터 블로그마다 내용이 다 상이한데, 그래서 뭐가 맞는지 헷갈렸다. DispatcherServlet으로 갔다가 view resolver로 가고, view를 거쳐서 DispatcherServlet으로 간 후 클라이언트 화면에 출력한다고 하는 곳도 있고, DispatcherServlet → view resolver → DispatcherServlet → view → DispatcherServlet → 출력이라 하는 곳도 있었다. 그래서 그냥 내가 spring프로젝트 하면서 직접 본 코드 동작을 토대로 작성했다.

반응형
Comments