저는 Spring MVC에서 초보자입니다. 핸들러 어댑터를 명확하게 이해하지 못했습니다. 핸들러 어댑터 란 무엇이며 언제 어댑터를 사용합니까?spring mvc에서 Handler 어댑터 란 무엇입니까?
답변
here을 시작하고 도움이되는지 확인하십시오. 그렇지 않은 경우보다 구체적인 질문을하십시오. 또한 Spring 문서의 this section은 기본 어댑터와 주석 구성과의 관계에 대해 설명합니다.
간단히 말해서 처리기 어댑터는 어떤 컨트롤러 (및 메서드)가 요청을 호출할지 결정합니다.
HandlerMapping은 메소드를 URL에 매핑하기 만하면됩니다. 대부분의 초보자는이 객체를 직접 사용하지 않고 대신 RequestMapping을 사용합니다. 매핑 된 메소드의 반환 유형 (일반적으로)은 SpringMVC가 응답을 렌더링하는 데 사용할 뷰를 결정합니다. 하는 것,
@RequestMapping(value={"/", "/home"}, method=RequestMethod.GET)
public String getHome() {
return "homepage";
}
방법은 뷰의 문자열 이름을 반환 :
예를 들어, 다음 RequestMapping은 "/"또는 "/ 홈"이 메소드를 호출하는 GET 요청에 대한 모든 HandlerMapping을 생성합니다 일반적으로 "/WEB-INF/views/homepage.jsp"로 결정됩니다 (물론 귀하의 ViewResolver에 달려 있습니다)
시작을위한 fyi : 귀하에게 필요한 매개 변수로 다른 개체를 추가 할 수 있습니다 메서드 (Locale, HttpServletRequest 등). 자세한 정보는 RequestMapping javadoc을 참조하십시오.
그는 HandlerAdapter에 대해 물었습니다. HandlerMapping에 대해 설명했습니다. –
HandlerMapping
은 메서드를 URL에 매핑하므로 DispatcherServlet
은 특정 요청에 의해 호출되어야하는 메서드를 알고 있습니다. 그런 다음 DispatcherServlet
은 HandlerAdapter
을 사용하여 메소드를 호출합니다.
왜 DispatcherServlet이 직접 메소드를 호출하지 않는 이유는 무엇입니까? 주석처럼 메소드를 호출하는 방법에는 여러 가지가 있기 때문에
, XML 등 HandlerAdapter
드 결합시킨다 DispatcherServlet
및 호출 된 행동.
HandlerAdapter에서 어댑터를 찾을 수 있으며 그 이름의 일부는 어댑터 패턴에서 가져옵니다. 어댑터는 두 객체 사이의 다리와 같으며 HandlerAdapter는 핸들러 객체와 디스패처 서블릿 사이의 다리입니다.
Spring 설명서에서 가져온 HandlerAdapter 소스 코드에서 알 수 있듯이 ModelAndView 반환 유형의 핸들 메서드가 하나 있습니다. 모든 HandlerAdapter는이 메소드를 구현하여 HttpServletRequest 및 HttpServletResponse를 핸들러 객체에 위임하므로 핸들러 객체는 이러한 HttpServletRequest/Response를 사용하여 응용 프로그램 논리를 실행합니다.
public interface HandlerAdapter {
//Check if controller is supported
boolean supports(Object handler);
//handle request
ModelAndView handle(HttpServletRequest rqst,
HttpServletResponse rsp,
Object handler) throws Exception;
이 응용 프로그램 논리 실행은 모델과 뷰를 생성합니다. 뷰는 뷰 이름 String 또는 View 객체의 형태 일 수 있습니다. 모델에는 뷰를 렌더링하는 데 사용할 데이터가 들어 있습니다. HandlerAdapter는 ModelAndView 객체에서 모델과 뷰를 래핑합니다. ModelAndView 객체를 처리하기위한 디스패처 서블릿 작업입니다.
Dispatcher 서블릿은 핸들러 오브젝트를 알지 못하며 응용 프로그램 논리를 직접 처리하지 않아도됩니다. HandlerAdapter는 모델과 뷰를 ModelAndView 객체로 변환하는 것을 덜어주었습니다. HandlerAdapter는 그 변환 작업을 수행 할 것이기 때문입니다.
- 1. 가상 어댑터 란 무엇입니까
- 2. Atypon 어댑터 란 무엇입니까?
- 3. 어댑터 란 무엇입니까?
- 4. Spring MVC에서 매핑 관리하기
- 5. enum으로 Spring MVC에서 선택
- 6. Spring MVC에서 연결 풀링하기
- 7. Spring MVC에서 ApplicationContext 사용하기.
- 8. Spring MVC에서 템플릿 페이지 재사용
- 9. Object Handler 대신 Class Handler
- 10. Spring MVC에서 SQLXML 타입을 전달하는 방법은 무엇입니까?
- 11. Spring MVC에서 데이터베이스로부터 테마를로드하는 방법은 무엇입니까?
- 12. Spring 3 mvc에서 DispatcherServlet을 설정하는 방법은 무엇입니까?
- 13. Spring MVC에서 모든 컨트롤러를 찾는 방법은 무엇입니까?
- 14. Spring MVC에서 Struts ActionMessages와 동일한 것은 무엇입니까?
- 15. Spring MVC에서 Errors 객체의 모델 키는 무엇입니까?
- 16. Spring MVC에서 TilesViewResolver를 올바르게 설정하는 방법은 무엇입니까?
- 17. Spring MVC에서 Spring REST 튜토리얼 오해에 대해서
- 18. Spring MVC에서 다형 폼 바인딩하기
- 19. spring mvc에서 JS 파일로드 중
- 20. Spring MVC에서 태그 클라우드 생성하기
- 21. Spring MVC에서 HTML을 조건부로 렌더링
- 22. Spring-MVC에서 애플리케이션 속성 액세스하기
- 23. Spring MVC에서 세션 시작시 어떻게해야합니까?
- 24. Spring MVC에서 web.xml에 ContextLoaderListener 추가하기
- 25. Spring MVC에서 HTTP 요청 매개 변수 사용하기
- 26. Spring MVC에서 정적 페이지를 처리하기위한 우수 사례
- 27. Spring MVC에서 Ajax를 사용할 때의 인증 고려
- 28. Spring 웹 MVC에서 Ajax JQuery를 사용하는 방법
- 29. Memoization Handler
- 30. handler = function?
링크가 끊어졌습니다. – Vishnu
@Vishnu 6 년 후에 상황이 바뀐 것 같습니다. –