SpringMVC 점프 문제
SpringMVC의 컨트롤러는 데이터를 처리 할 때마다 논리적보기와 모델을 반환합니다.
따라서 기본 컨트롤러가 ModelAndView (내부에서보기 및 모델 포함)를 반환합니다.
정상적인 상황에서 (@ModelAttribute에 의해 주석이 달린 메소드가 아니라면) ModelAndView는 결국 반환됩니다.
물론, 때로는 함수 처리 방법이 논리적보기를 반드시 반환 할 필요는 없지만 다른 함수 메소드로 리디렉션 될 수도 있습니다.
내부적으로 논리적보기 또는 다른 기능 방법으로 전달합니다.
---
SpringMVC의 힘은 서블릿에 대한 많은 양의 기본 코드를 캡슐화하지만 서블릿 API에서 사용자를 완전히 차단한다는 것입니다.
따라서 SpringMVC의 페이지 점프는 두 가지 범주로 나뉩니다.
Servletapi를 사용하여 페이지 점프를 구현하십시오
리디렉션 메소드 : 리디렉션의 본질은 브라우저가 요청을 재현하도록 요구하기 때문에 SpringMVC의 페이지는 일반적으로 Web-Inf 아래에 배치되며 브라우저는 직접 액세스 할 수 없습니다).
따라서 여기서 리디렉션은 본질적으로 다른 기능적 방법으로 리디렉션됩니다.
서버 내 전달 요청 : 요청 전달은 서버의 내부 동작이므로 JSP 페이지에 액세스하거나 다른 기능 처리 방법으로 직접 이동할 수 있습니다.
```텍스트
// 페이지 리디렉션 @requestmapping ( "/c") 공개 문자열 테스트 (httpservletResponse 응답, httpservletrequest request)에 기본 servletapi를 사용합니다 Server // request.getRequestDispatcher ( "/web-inf/jsp/index.jsp"). FORMPER (요청, 응답); // 서버 내에서 함수 처리 방법으로 건너 뜁니다. // request.getRequestDispatcher ( "/dispather/b"). forward (요청, 응답); // 함수 메소드 응답 리디렉션 .sendRedirect (request.getContextPath ()+"/dispather/b"); 널 리턴; }
SpringMVC의 API를 사용하여 페이지 점프를 구현하십시오
논리보기 이름을 직접 반환하십시오
text @requestmapping ( "/b") public string testb () {System.out.println ( "testb"); // 뷰로 직접 반환되면 "색인"; }Custom ModelAndView를 반환합니다 : ModelAndView를 사용자 정의 할 때 전달을 리디렉션하거나 요청할 수 있습니다.
```텍스트
// 컨트롤러는 ModelAndView를 사용하여 @requestmapping ( "/e") public modelandview redee () {System.out.println ( "teste"); // 서버 내부의 페이지로 건너 뜁니다. // 서버 내에서 기능 처리 방법으로 건너 뜁니다. // 새 ModelAndView ( "Forward :/Dispather/B"); // 함수 메소드 리디렉션 새로운 ModelAndView ( "Redirect :/Dispather/B");}요약
위의 내용은 SpringMVC의 페이지 점프 문제를 논의하는이 기사에 관한 모든 것입니다. 모든 사람에게 도움이되기를 바랍니다. 관심있는 친구는이 사이트의 다른 관련 주제를 계속 참조 할 수 있습니다. 단점이 있으면 메시지를 남겨 두십시오. 이 사이트를 지원해 주신 친구들에게 감사드립니다!
참조 :
SpringMVC 간단한 로그인 예제의 Java 프로그래밍 구현
SpringMVC 인터셉터는 단일 사인온을 구현합니다
SpringMVC REST 스타일 소개 및 구현 코드 예제