在JSP中页面转发有两种情况:服务器内部跳转(forward)和客户端重定向(redirect)。
SpringMVC选择页面转发的方式也非常简单。
1.转发JSP页面
若请求处理方法返回字符串,默认使用服务器内部跳转(forward),如:
return "hello”;
如果希望客户端重定向(redirect),在返回的字符串前面加上“redirect:/”
return "redirect:/hello”;
若请求处理方法返回ModelAndView,使用setViewName方法设置转发的页面:
model.setViewName("redirect:/hello”);
2.转发控制器的请求处理方法
若请求处理方法返回字符串,在返回的字符串前面加上”forward:/“,则服务器内部跳转到名为main的请求处理方法。
@RequestMapping(value="/hello_view") public ModelAndView helloAndView(ModelAndView model) { model.addObject("message", "hello_view"); model.setViewName("forward:/hello"); return model; }
所以在hello_view可以看到hello的输出