RedirectAttributes重定向
Posted afei1759
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RedirectAttributes重定向相关的知识,希望对你有一定的参考价值。
1、url显示参数信息(不安全) @Controller @RequestMapping("/UserOperate") public class UserController @RequestMapping("/login") public String login(RedirectAttributs redirectAttributes) redirectAttributes.addAttributie("name", "123"); redirectAttributes.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 redirectAttributes) redirectAttributes.addFlashAttributie("name", "123"); redirectAttributes.addFlashAttributie("success", "success"); return "redirect:/UserOperate/main";//重定向后到mainly()函数 @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不显示参数,重定向后在mainly()中只能通过@ModelAttribute获取参数值
以上是关于RedirectAttributes重定向的主要内容,如果未能解决你的问题,请参考以下文章
在没有RedirectAttributes的环境中如何在重定向环境中报错错误提示信息供页面使用
SPRING IN ACTION 第4版笔记-第七章Advanced Spring MVC-006- 如何保持重定向的request数据(用model占位符RedirectAttributes)(代码