인프런 커뮤니티 질문&답변

잠꾸님의 프로필 이미지
잠꾸

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

스프링 인터셉터 - 요청 로그

핸들러 관련하여 질문드립니다.

작성

·

350

2

안녕하세요!

강의에서 preHandle 메소드에서 Object handler를 파라미터로 받아서, HandlerMethod 타입인지 확인후에  HandlerMethod 로 캐스팅하여 여러가지 핸들러에 대한 정보를 읽어올 수 있다고 하셨는데요!

제가 궁금한건 스프링MVC1편 강의에서 핸들러라 하면, 그... 결국에 @RequestMapping 을 사용하는 사용자가 정의한 컨트롤러 객체 아닌가요?

저 메소드의 인자로 받은 handler는 핸들러 어댑터가 실행하는 컨트롤러 객체가 아니라 다른 객체인건가요?

왜냐하면 저기서는  HandlerMethod 타입으로 캐스팅하는데 이게 컨트롤러 객체이면 타입이 HandlerMethod가 될 수 없을것 같아서 궁금하여 질문드립니다!

정리하면 파라미터로 넘어온 handler가 @RequestMapping을 사용하는 컨트롤러 객체라면 어떻게 HandlerMethod 타입으로 캐스팅이 될 수 있는지? 궁금합니다.

감사합니다!

답변 1

2

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 연어포케님

MVC1에서는 크게 구조적인 내용을 설명드리고, 클래스 단위로 설명을 드렸습니다.

스프링의 @RequestMapping은 잘 생각해보면 클래스 단위가 아니라 메서드 단위로 동작합니다.

각각의 메서드에 요청 매핑을 할 수 있으니까요^^!

그래서 스프링도 메서드 단위로 처리할 수 있도록 이 부분을 HandlerMethod로 만들었다고 이해하시면 됩니다.

감사합니다^^

잠꾸님의 프로필 이미지
잠꾸

작성한 질문수

질문하기