해결된 질문
작성
·
124
1
강의 정말 잘 듣고 있습니다. 감사합니다.
섹션5. Spring MVC-시작하기를 보고 제 나름의 정리를 해봤는데 올바르게 이했는지 모르겠습니다.
정리한 내용은 다음과 같습니다.
- @Controller 에너테이션이 붙은 클래스의 @RequestMapping 어노테이션이 붙은 메소드가 핸들러(HandlerExecutionChain안의 Object 타입)의 실행 메소드가 된다.
- RequestMappingHandlerMapping에 key : @RequestMapping의 URL, value : 메소드를 실행할 객체 로 추가된다.
- RequestMappingHandlerMapping에서 URL과 매핑되는 객체(value로 추가된 객체)를 찾는다.
- ReqeustMappingHandlerAdapter를 통해 핸들러의 메소드를 실행하고 ModelAndView를 반환한다.
그렇게 생각했을 때 @Controller 에너테이션이 붙은 클래스에서만
RequestMappingHandlerMapping에 핸들러를 추가 / 조회하고
RequestMappingHandlerAdapter를 찾을 수 있는 권한이 있는건가요?
답변 1
1
안녕하세요. 재선님
맞습니다. 추가로 RequestMapping 이름에서 알 수 있듯이 사실은 클래스 레벨에 @RequestMapping이 붙은 객체를 찾습니다. 그런데 편의상 @Controller가 클래스 레벨에 붙은 객체도 함께 찾아서 적용합니다.
감사합니다.