转发(forward)
在springmvc中转发的默认视图为: InternalResourceView
当设置返回视图前缀为:"forward:"时,会创建InternalResourceView视图,这个视图不会被配置文件中的视图解析器解析,而是会将前缀后面的部分作为最终路径通过转发的方式进行跳转。
@RequestMapping("/test4")
public String test4(Model model) {
System.out.println("转发 test");
model.addAttribute("name","lisi");
return "forward:/person/test3";
}
通过转发的方式实现跳转,url地址不会发生改变,并作用域中的值也会被传递(model类似于request作用域的概念)
重定向(redirect)
重定向的默认视图为:RedirectView
"redirect:"作为前缀时,视图解析器同样不会解析RedirectView视图,以前缀后面的部分做重定向跳转
@RequestMapping("/test5")
public String test5(Model model) {
System.out.println("重定向 test");
model.addAttribute("name","zhangsan");
return "redirect:/person/test3";
}
重定向跳转,url会发生改变,同时不会获取到addAttribute的值,即model中的值不会被传递