一、forward 转发
controller 方法在提供了 String 类型的返回值之后,默认就是请求转发。
我们也可以写成:
/**
* 转发
* @return
*/
@RequestMapping("/testForward")
public String testForward() {
System.out.println("AccountController 的 testForward 方法执行了。。。。 ");
return "forward:/WEB-INF/pages/success.jsp";
}
需要注意的是,如果用了 formward:
则路径必须写成实际视图 url,不能写逻辑视图,因为此时无法通过视图解析器去解析。
它相当于“ request.getRequestDispatcher("url").forward(request,response)
” 。使用请求
转发,既可以转发到 jsp,也可以转发到其他的控制器方法。
二、Redirect 重定向
contrller 方法提供了一个 String 类型返回值之后, 它需要在返回值里使用:redirect:
/**
* 重定向
* @return
*/
@RequestMapping("/testRedirect")
public String testRedirect() {
System.out.println("AccountController 的 testRedirect 方法执行了。。。。 ");
return "redirect:/index.jsp";
}
它相当于“response.sendRedirect(url)
” 。需要注意的是,如果是重定向到 jsp 页面,则 jsp 页面不
能写在 WEB-INF 目录中,否则无法找到