스프링 mvc 전체 구조

image.png

핸들러 매핑

스프링 빈의 이름으로 핸들러를 찾을 수 있는 핸들러 매핑이 필요

0 = RequestMappingHandlerMapping   : 애노테이션 기반의 컨트롤러인 @RequestMapping에서 사용
1 = BeanNameUrlHandlerMapping      : 스프링 빈의 이름으로 핸들러를 찾는다.

핸들러 어댑터

핸들러를 실행 할 수 있는 어댑터 필요

0 = RequestMappingHandlerAdapter   : 애노테이션 기반의 컨트롤러인 @RequestMapping에서 사용
1 = HttpRequestHandlerAdapter      : HttpRequestHandler 처리
2 = SimpleControllerHandlerAdapter : Controller 인터페이스(애노테이션X, 과거에 사용) 처리

뷰 리졸버

컨트롤러 등록방법 3가지

  1. @Controller → 내부에 @Component가 있음
  2. @Component @RequestMapping
  3. @Bean으로 직접 등록