사용자 도구

사이트 도구


springframework:mvc:handlermethodargumentresolver

문서의 이전 판입니다!


Spring @MVC HandlerMethodArgumentResolver

구현

  • public boolean supportsParameter(MethodParameter parameter) : Resolver가 해당 파라미터에 적용 가능한지 여부를 검사하여 true/false 리턴
  • Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception : 파라미터 인자와 기타 정보등을 통해서 실제 객체를 생성하여 리턴하면 해당 객체가 컨트롤러 메소드의 인자로 들어가게 된다.

적용

<mvc:annotation-driven>
    <mvc:argument-resolvers>
        <bean class="kr.pe.kwonnam.someproject.LoginUserHandlerMethodArgumentResolver"/> <!--일반 Bean 주입 -->
    </mvc:argument-resolvers>
</mvc:annotation-driven>

MethodParameter

  • 지정된 파라미터에 대한 각종 정보와 어노테이션 등을 읽어올 수 있다.

ModelAndViewContainer

NativeWebRequest

  • NativeWebRequest : HttpServletRequest를 확보할 수 있다.
  • PathVariable 읽기
HttpServletRequest httpServletRequest = webRequest.getNativeRequest(HttpServletRequest.class);
Map<String,String> pathVariables = (Map<String, String>) httpServletRequest.getAttribute(HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE);
// pathVariables 맵에 정보가 저장 됨.

WebDataBinderFactory

springframework/mvc/handlermethodargumentresolver.1331182223.txt.gz · 마지막으로 수정됨: 2012/03/08 13:50 저자 kwon37xi