RedirectAttributes是Spring mvc 3.1版本之后出来的一个功能,专门用于重定向之后还能带参数跳转的。
有两种带参的方式:
- redirectAttributes.addAttribute("param", value);
这种方法是在重定向之后在URL后面拼接参数
- redirectAttributes.addFlashAttribute("param", value);
这种方法可以在URL后面隐藏参数,原理是将参数放到Session中,在Session跳转到页面后就会马上被移除,所以刷新页面后值会丢失。这个方法只能在重定向的页面上使用EL表达式取值,如果是重定向到Controller中是无法获取param中的value,需要在重定向的目标方法上添加对应的形参@RequestPrama(value = "prama")String prama才能获取参数。