其他分享
首页 > 其他分享> > RedirectAttributes重定向

RedirectAttributes重定向

作者:互联网

1、url显示参数信息(不安全)
@Controller
@RequestMapping("/UserOperate")
public class UserController {
    @RequestMapping("/login")
     public String login(RedirectAttributs redirect) { 
        redirect.addAttributie("name", "123");  
        redirect.addAttributie("success", "success"); 
        //等价于 "redirect://main?name=123&success=success"
        return "redirect:/UserOperate/main";
 }
 
@RequestMapping("/main")
 public String login(HttpServletRequest request) { 
     String name=request.getParameter("name");
     String success=request.getParameter("success");
     System.out.println(name);//输出"name"
     System.out.println(success);//输出"success" return "main";//返回main.jsp
 }
}
此种方法url直接显示“main?name=123&success=success”,在重定向之后的页面或者控制器main()方法里再去获取url后面的参数就可以了
 
2、url不显示参数信息(安全)
@Controller
@RequestMapping("/UserOperate")
public class UserController {
 @RequestMapping("/login")
 public String login(RedirectAttributs redirect) { 
    redirectAttributes.addFlashAttributie("name", "123"); 
    redirectAttributes.addFlashAttributie("success", "success");  
    return "redirect:/UserOperate/main";//重定向后到main()函数
}
 
@RequestMapping("/main")
 public String mainly(@ModelAttribute("name") String name,
 @ModelAttribute("success") String success ) { 
     System.out.println(name);//输出"name"
     System.out.println(success);//输出"success" return "main";//返回main.jsp
  }
}
此种方法url不显示参数,重定向后在main()中只能通过@ModelAttribute获取参数值        
    

 

标签:redirect,String,success,name,RedirectAttributes,main,public,重定向
来源: https://www.cnblogs.com/afei1759/p/11216130.html