请求转发
@RequestMapping("/f0")
public String forward0() {
return "back/res"; //Spring框架找到对应的View并渲染
}
@RequestMapping("/f1")
public String forward1(HttpServletRequest request) {
System.out.println(request.getAttribute("name"));
return "back/res";
}
@RequestMapping("/f2")
public ModelAndView forward2() {
ModelAndView mav = new ModelAndView("success");
mav.addObject("name", "zhangsan");
mav.setViewName("back/res");
return mav; //Spring框架找到对应的View并渲染
}
@RequestMapping("/f3")
public ModelAndView forward3(ModelAndView mav) {
mav.addObject("name","zhangsan");
mav.setViewName("back/res");
return mav;
}
@RequestMapping("/f4")
public String forward4(HttpServletRequest request) {
request.setAttribute("name", "lisi");
return "forward:f0"; // 请求转发
}
@RequestMapping("/f5")
public String forward5(HttpServletRequest request) {
request.setAttribute("name","zhangsan");
return "back/res"; //Spring框架找到对应的View并渲染
}
@RequestMapping("/f6")
public void forward6(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setAttribute("name", "zhangsan");
//采用下面形式,配置文件中的视图解析器就不再起作用了
request.getRequestDispatcher("/res.jsp").forward(request, response);//请求转发
}
重定向
@RequestMapping("/r10")
public String redirect10(HttpServletRequest request) throws IOException {
System.out.println("name " + request.getAttribute("name"));
return "redirect:../res.jsp";
}
@RequestMapping("/r11")
public String redirect11(HttpServletRequest request) throws IOException {
request.setAttribute("name", "wanger");
return "redirect:/demo/r10";
}
@RequestMapping("/r20")
public String redirect20(RedirectAttributes attributes, @ModelAttribute("name") String name) throws IOException {
attributes.addAttribute("name", name);
return "back/res";
}
@RequestMapping("/r21")
public String redirect21(RedirectAttributes attributes) throws IOException {
attributes.addAttribute("name", "wanger");
return "redirect:/demo/r20";
}
//springmvc 和Servlet整合
@RequestMapping("/r3")
public void redirect3(HttpServletRequest request, HttpServletResponse response) throws IOException {
ServletContext servletContext = request.getSession().getServletContext();
String contextPath = servletContext.getContextPath();
response.sendRedirect(contextPath + "/res.jsp");//重定向
}