Spring MVC 란 ?
애플리케이션 개발 영역을 Model View Controller 로 구분하여 각 역할에 맞게 코드를 작성하는 디자인 패턴이다.
MVC 패턴의 구조
Model
클라이언트에서 요청을 받으면 응답으로 처리해주는 결과 데이터를 Model 이라고 한다.
View
클라이언트에서 요청을 받아 처리해주는 결과 데이터 Model 에서 브라우저에 보이는 화면 리소스를 제공하는 역할을 한다.
Controller
클라이언트 측의 요청을 직접적으로 전달받는 엔드포인트 로써 Model 데이터가 만들어지면 이 Model 데이터를 View 로 전달하는 역할을 한다.
MVC 동작 순서
1. 핸들러 조회
핸들러 매핑을 통해 URL에 매핑된 핸들러를 조회한다.
2. 핸들러 어댑터 조회
핸들러를 처리할 수 있는 핸들러 어댑터를 조회한다.
3. 핸들러 어댑터 실행
조회한 핸들러 어댑터 에서 핸들러(controller)를 호출한다.
4. ModelAndView 반환
핸들러 어댑터는 핸들러가 반환하는 정보를 ModelAndView 로 변환하여 반환한다.
5. ViewResolver 호출
View resolver 를 호출하여 View 를 반환한다.
2. View Randering
View 를 렌더링 한다.