이름만 바뀌고 내가 만들었던 mvc 구조랑 똑같다.
디스패처를 루트로 설정해놔, (urlPatterns="/*") 모든 요청을 저걸통해 받는다.
그 다음, uri(여기선 헤더에 있는 정보등 더 많은 정보를 이용한다)를 조회해 핸들러 mappingMap에 있는 것들 중 있으면 handler를 가져온다.
그 다음, 그 handler로 handlerAdapters를 조회해 어댑터를 가져온다.
그 다음, 그걸로 handle(service)해주면 그것이 ModelAndView를 반환한다.
그걸 viewResolver를 통해 논리 이름을 물리 이름으로 바꿔주고, 그 물리 이름이 포함된 View를 반환해 준다.
이 View.render()로 화면을 그려 response에 넣어 응답해준다.
여기 있는 대부분이 interface를 통해 확장이 가능하다.
'스프링 > 3. 스프링 MVC' 카테고리의 다른 글
33. 뷰 리졸버 (0) | 2023.08.09 |
---|---|
32. 핸들러매핑, 핸들러어댑터 (0) | 2023.08.09 |
30. 어댑터 패턴 정리 (0) | 2023.08.07 |
29. 어댑터 패턴 (0) | 2023.08.07 |
28. 유연한 컨트롤러 (0) | 2023.08.07 |