공부하는 스누피
[Spring] MVC 기본 정리 본문
DispatcherServlet
스프링 컨테이너를 생성해 웹 브라우저의 요청을 받아 알맞은 응답을 보내고, 컨테이너 안의 컴포넌트간 요청 흐름을 제어한다.
* Servlet이란 자바에서 웹을 만들기 위해 필요한 기술로, 요청을 받고 응답을 보내주는 역할을 한다.
HandlerMapping
요청을 처리할 핸들러(컨트롤러) 객체를 찾아준다.
@Controller를 적용한 Bean 객체에 명시된 경로만 대응할 수 있다.
Controller(핸들러)
요청을 실제로 처리한 뒤 View 정보와 Model을 설정한다.
HandlerAdapter
DispatcherServlet과 Controller 간 변환을 처리해 준다.
ViewResolver
요청 처리 결과를 생성할 View를 찾아준다.
View
응답을 생성한 후 DispatcherServlet에 전달해 사용자에게 응답이 갈 수 있게 한다.
+ MVC를 위한 설정 클래스 WebMvcConfigurer
설정 클래스에 @EnableWebMvc 어노테이션을 붙이면 @Controller 어노테이션을 붙인 컨트롤러를 위한 설정을 생성한다. WebMvcConfigurer 인터페이스를 구현하여 상황에 맞게 메소드를 오버라이딩하면 된다.
configureViewResolvers 메소드를 재정의할 경우 View 폴더 위치 등 View와 관련된 설정을 할 수 있다.
configureDefaultServlet 메소드는 클라이언트의 모든 요청을 디폴트 Servlet에 전달하게 한다. 여기서 DispatcherServlet은 HandlerMapping에 Controller를 찾아본 후 없으면 SimpleUrlHandlerMapping에서 Controller를 찾게 한다. SimpleUrlHandlerMapping을 사용하게 될 경우 디폴트 Servlet에 처리를 위임한다.
'Web > Spring' 카테고리의 다른 글
[Spring] 커맨드 값 검증 방법 (0) | 2020.08.28 |
---|---|
[Spring] 메시지 정리 (0) | 2020.08.28 |
[AWS, Spring] Spring 프로젝트 Beanstalk에 올리기 (0) | 2020.08.11 |
[Spring] AOP 정리 (0) | 2020.08.10 |
[Spring] 자동 의존 주입을 위한 어노테이션들 (0) | 2020.08.07 |