javascript
Spring中RedirectAttributes的用法
?
RedirectAttributes 是Spring mvc 3.1版本之后出來的一個功能,專門用于重定向之后還能帶參數(shù)跳轉的的工具類。他有兩種帶參的方式:
第一種:
redirectAttributes.addAttributie("prama",value); 這種方法相當于在重定向鏈接地址追加傳遞的參數(shù),例如:
1 redirectAttributes.addAttributie("prama1",value1); 2 3 redirectAttributes.addAttributie("prama2",value2); 4 5 return:"redirect:/path/list" ;以上重定向的方法等同于 return:"redirect:/path/list?prama1=value1&prama2=value2 " ,注意這種方法直接將傳遞的參數(shù)暴露在鏈接地址上,非常的不安全,慎用。
?
第二種:
redirectAttributes.addFlashAttributie("prama",value); 這種方法是隱藏了參數(shù),鏈接地址上不直接暴露,但是能且只能在重定向的 “頁面” 獲取prama參數(shù)值。其原理就是放到session中,session在跳到頁面后馬上移除對象。如果是重定向一個controller中是獲取不到該prama屬性值的。除非在controller中用(@RequestPrama(value = "prama")String prama)注解,采用傳參的方式。頁面獲值例如:
1 redirectAttributes.addFlashAttributie("prama1",value1); 2 3 redirectAttributes.addFlashAttributie("prama2",value2); 4 5 return:"redirect:/path/list.jsp";?
在以上參數(shù)均可在list.jsp頁面使用EL表達式獲取到參數(shù)值${prama*}
controller獲得redirectAttributes重定向的值例如:
1 redirectAttributes.addFlashAttributie("prama1",value1); 2 3 redirectAttributes.addFlashAttributie("prama2",value2); 4 5 return:"redirect:/path/list/" 6 7 @RequestMapping("list") 8 public List<Student> list(@RequestPrama(value = "prama1")String prama1, 9 @RequestPrama(value = "prama2")String prama2,... 10 ){ 11 //TODO 12 //your code 13 14 }?
通過在controller中的list方法體中可以獲取到參數(shù)值。 轉載自:https://zhuanlan.zhihu.com/p/21353217?refer=pengsong-java轉載于:https://www.cnblogs.com/DDgougou/p/8891076.html
總結
以上是生活随笔為你收集整理的Spring中RedirectAttributes的用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OpenCV中高斯混合背景建模算法汇总
- 下一篇: tp框架中的一些疑点知识-5