MVC 패턴이란?
하나의 애플리케이션, 프로젝트를 구성할 때 그 구성요소를 세가지의 역할로 구분한 패턴으로 사용자 인터페이스로부터 비즈니스 로직을 분리하여 애플리케이션의 시각적 요소나 그 이면에서 실행되는 비즈니스 로직을 서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있다.
- Model
- 로직 안에서 이동하고 있는 데이터
- View
- 화면은 화면의 역할만
- 사용자 인터페이스 요소
- Controller
- 비즈니스 로직을 처리하고 모델과 뷰를 응답으로 준다
- 데이터와 비즈니스 로직 사이의 상호동작을 관리
스프링 MVC 구조
- 핸들러 조회: 핸들러 매핑을 통해 요청 URL에 매핑된 핸들러(컨트롤러)를 조회
- 핸들러 어댑터 조회: 핸들러를 실행할 수 있는 핸들러 어댑터를 조회
- 핸들러 어댑터 실행: 핸들러 어댑터를 실행
- 핸들러 실행: 핸들러 어댑터가 실제 핸들러를 실행
- ModelAndView 반환: 핸들러 어댑터는 핸들러가 반환하는 정보를 ModelAndView로 변환해서 반환한다.
- viewResolver 호출: 뷰 리졸버를 찾고 실행
- View 반환: 뷰 리졸버는 뷰의 논리 이름을 물리 이름으로 바꾸고, 렌더링 역할을 담당하는 뷰 객체를 반환
- 요새는 JSON 형태로 데이터로 응답한다. 뷰 렌더링 X → restful
- 뷰 렌더링: 뷰를 통해서 뷰를 렌더링 한다.
'Spring Framework > Spring' 카테고리의 다른 글
스프링 MVC - Filter , Interceptor (0) | 2022.06.08 |
---|---|
스프링 MVC - HTTP Request,Response (0) | 2022.06.08 |
Spring Validation (0) | 2022.06.07 |
Data Binding (0) | 2022.06.07 |
Spring AOP(관점 지향 프로그래밍) (0) | 2022.06.07 |
댓글