SpringMVC页面跳转重定向
2020.02.03 14:31
2020.02.03 14:31
1. 页面跳转
SpringMVC提供了两个页面跳转相关的“字符串”:
- redirect
- forward
1.1. redirect
redirect:重定向
服务器收到请求后发送一个状态码给客户端,让客户端再重新请求,并且第一次请求中Request里的数据消失。
所以redirect相当于客户端向服务器发出两次请求,第一次请求的数据不会转发给第二次请求,URL地址会变化两次。
@RequestMapping("/testRedirect")
public String testRedirect() {
return "redirect:testRedirect2";
}
@RequestMapping("/testRedirect2")
public String testRedirect2() {
return SUCCESS;
}
结果:
代码2:
@RequestMapping("/testRedirect")
public String testRedirect() {
return "redirect:/second.jsp";
}
需要存在:src/main/webapp/second.jsp
文件。
1.2. forward
forward:转发
服务器内部的重定向,在Servlet中通过RequestDispatcher转发给另一个程序处理请求,请求的数据依然在。
所以forward相当于客户端向服务器发送一次请求,服务器处理两次,请求数据不会消失且URL地址只变化一次。
所以我们一般也就直接使用return "success";
即可(即存在success.jsp)。
@RequestMapping("/testForward")
public String testForward() {
return "forward:/test/testForward2";
}
@RequestMapping("/testForward2")
public String testForward2() {
return SUCCESS;
}
本节阅读完毕!
(分享)