내용으로 건너뛰기
권남
사용자 도구
로그인
사이트 도구
검색
도구
문서 보기
이전 판
역링크
최근 바뀜
미디어 관리자
사이트맵
로그인
>
최근 바뀜
미디어 관리자
사이트맵
추적:
•
rev-list
springframework:mvc:handlermethodargumentresolver
이 문서는 읽기 전용입니다. 원본을 볼 수는 있지만 바꿀 수는 없습니다. 문제가 있다고 생각하면 관리자에게 문의하세요.
====== Spring @MVC HandlerMethodArgumentResolver ====== * [[http://static.springsource.org/spring/docs/3.1.x/javadoc-api/org/springframework/web/method/support/HandlerMethodArgumentResolver.html|HandlerMethodArgumentResolver]] Spring 3.1이상 지원. * 컨트롤러 메소드에 파라미터로 객체를 주입할 수 있게 된다. * [[http://blog.42.nl/articles/leveraging-the-spring-mvc-3.1-handlermethodargumentresolver-interface|42 B.V.: Leveraging the Spring MVC 3.1 HandlerMethodArgumentResolver interface]] ===== 구현 ===== * ''public boolean supportsParameter(MethodParameter parameter)'' : Resolver가 해당 파라미터에 적용 가능한지 여부를 검사하여 true/false 리턴 * ''Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception'' : 파라미터 인자와 기타 정보등을 통해서 실제 객체를 생성하여 리턴하면 해당 객체가 컨트롤러 메소드의 인자로 들어가게 된다. ===== 적용 ===== <code xml> <mvc:annotation-driven> <mvc:argument-resolvers> <bean class="kr.pe.kwonnam.someproject.LoginUserHandlerMethodArgumentResolver"/> <!--일반 Bean 주입 --> </mvc:argument-resolvers> </mvc:annotation-driven> </code> 혹은 java-config에서 <code java> @Override protected void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) { super.addArgumentResolvers(argumentResolvers); argumentResolvers.add(myArgumentResolver()); // .... } </code> ===== MethodParameter ===== * [[http://static.springsource.org/spring/docs/3.1.x/javadoc-api/org/springframework/core/MethodParameter.html|MethodParameter]] * 지정된 파라미터에 대한 각종 정보와 어노테이션 등을 읽어올 수 있다. ===== ModelAndViewContainer ===== * [[http://static.springsource.org/spring/docs/3.1.x/javadoc-api/org/springframework/web/method/support/ModelAndViewContainer.html|ModelAndViewContainer]] ===== NativeWebRequest ===== * [[http://static.springsource.org/spring/docs/3.1.x/javadoc-api/org/springframework/web/context/request/NativeWebRequest.html|NativeWebRequest]] : HttpServletRequest를 확보할 수 있다. * PathVariable 읽기 <code java> HttpServletRequest httpServletRequest = webRequest.getNativeRequest(HttpServletRequest.class); Map<String,String> pathVariables = (Map<String, String>) httpServletRequest.getAttribute(HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE); // pathVariables 맵에 정보가 저장 됨. </code> ===== WebDataBinderFactory ===== * [[http://static.springsource.org/spring/docs/3.1.x/javadoc-api/org/springframework/web/bind/support/WebDataBinderFactory.html|WebDataBinderFactory]]
springframework/mvc/handlermethodargumentresolver.txt
· 마지막으로 수정됨: 2016/06/16 11:25 저자
kwon37xi
문서 도구
문서 보기
이전 판
역링크
맨 위로