SpringMVC重定向forward、redirect
1、一般情况下,控制器方法返回字符串类型的值会被当成逻辑视图名处理。
如果返回的字符串中带forward:或者redirect:前缀时,SpringMVC会对他们进行特殊处理。
@Controller
@RequestMapping("/springmvc")
public class HelloWorldController {
@RequestMapping("/testRedirect")
public String testRedirect() {
System.out.println("testRedirect");
return "redirect:/index.jsp";
}
}

2、在index.jsp页面中请求上面控制器的地址。
<html>
<body>
<h2>
<a href="springmvc/testRedirect">testRedirect</a>
</h2>
</body>
</html>

3、在浏览器中请求重定向地址,后台打印了相关日志又跳回到当前页面了。


4、其内部原理是生成了RedirectView视图。

5、在控制编写一段forward的代码:
@Controller
@RequestMapping("/springmvc")
public class HelloWorldController {
@RequestMapping("/testForward")
public String testForward() {
System.out.println("testForward");
return "forward:/index.jsp";
}
}

6、在jsp页面中请求上面的转发地址,在浏览器中请求地址查看程序执行效果。
<html>
<body>
<h2>
<a href="springmvc/testForward">test Forward</a>
</h2>
</body>
</html>

