天天看点

SpringMVC 请求转发与重定向

详细的转发与重定向的描述请看:https://blog.csdn.net/qq_43907358/article/details/97030984

springmvc中默认的是请求转发,这两种书写形式都可以

mv.setViewName("forword:/WEB-INF/success.jsp");
//        mv.setViewName("/WEB-INF/success.jsp");
           

重定向

重定向到视图资源 (不能放在安全目录下)

//重定向到视图资源
       @RequestMapping("/register.do")
       public ModelAndView register(@RequestParam("pname") String name,int age){
               ModelAndView mv = new ModelAndView();
               mv.addObject("name", name);
               mv.addObject("age", age);
               //请求转发
               //mv.setViewName("forward:/WEB-INF/jsp/welcome.jsp");
               mv.setViewName("redirect:/welcome.jsp");
               return mv;
       }
           

重定向到方法(重定向到另一个处理器方法时不能加“/”,重定向到视图资源必须要加“/”)

//重定向到controller方法资源
       @RequestMapping("/register.do")
       public String register(@RequestParam("pname") String name,int age,Model model){
               model.addAttribute("name", name);
               model.addAttribute("age", age);
               //重定向到一个处理器方法 :注意  不能加"/"
               return "redirect:some.do";
       }
       @RequestMapping("/some.do")
       public String some(){
               return "/welcome.jsp";
       }