RedirectAttributes 是Spring mvc 3.1版本之后出来的一个功能,专门用于重定向之后还能带参数跳转的的工具类。他有两种带参的方式:

第一种:

redirectAttributes.addAttributie("prama",value); 这种方法相当于在重定向链接地址追加传递的参数,例如:

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 " ,注意这种方法直接将传递的参数暴露在链接地址上,非常的不安全,慎用。

第二种:

redirectAttributes.addFlashAttributie("prama",value); 这种方法是隐藏了参数,链接地址上不直接暴露,但是能且只能在重定向的 页面 获取prama参数值。其原理就是放到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";

在以上参数均可在list.jsp页面使用EL表达式获取到参数值${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方法体中可以获取到参数值。

转载自:https://zhuanlan.zhihu.com/p/21353217?refer=pengsong-java

转载于:https://www.cnblogs.com/DDgougou/p/8891076.html

Spring中RedirectAttributes的用法相关推荐

  1. Spring MVC RedirectAttributes的用法解决办法

    Spring MVC RedirectAttributes的用法 很久没发过技术贴了,今天对于一个问题纠结了2小时,遂放弃研究用另一种方法解决,奈何心中一直存在纠结,发帖求解 我先解释下什么是Redi ...

  2. ajax redirectattributes 使用,Spring中RedirectAttributes对象重定向传参

    Spring3中的FlashAttribute 为 了防止用户刷新重复提交,save操作之后一般会redirect到另一个页面,同时带点操作成功的提示信息.因为是Redirect,Request里 的 ...

  3. Spring中jdbcTemplate的用法实例

    一.首先配置JdbcTemplate: 要使用Jdbctemplate 对象来完成jdbc 操作.通常情况下,有三种种方式得到JdbcTemplate 对象.        第一种方式:我们可以在自己 ...

  4. Spring中RedirectAttributes对象重定向传参

    Spring3中的FlashAttribute 为 了防止用户刷新重复提交,save操作之后一般会redirect到另一个页面,同时带点操作成功的提示信息.因为是Redirect,Request里 的 ...

  5. Spring中HibernateCallback的用法(转)

    Hibernate的复杂用法HibernateCallback HibernateTemplate还提供一种更加灵活的方式来操作数据库,通过这种方式可以完全使用Hibernate的操作方式.Hiber ...

  6. Spring中ApplicationContextAware的用法

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt379 一.这个接口有什么用? 当一个类实现了这个接口(Application ...

  7. Spring中Aware的用法以及实现

    Aware 在Spring当中有一些内置的对象是未开放给我们使用的,例如Spring的上下文ApplicationContext.环境属性Environment,BeanFactory等等其他的一些内 ...

  8. spring中的JdbcTemplate——JdbcTemplate的最基本用法

    spring中的JdbcTemplate JdbcTemplate的作用: 它就是用于和数据库交互的,实现对表的CRUD操作 JdbcTemplate 概述 它是 spring 框架中提供的一个对象, ...

  9. Spring中@Resource与@Autowired、@Qualifier的用法与区别

    Spring中@Resource与@Autowired.@Qualifier的用法与区别 1.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法 ...

最新文章

  1. tryexceptelse可以嵌套
  2. SQL Server的数据库开发工具
  3. 分类与逻辑回归(classification and logistic regression)
  4. python处理excel表格数据-零基础使用Python读写处理Excel表格的方法
  5. 2021-10-20 哈希表 恋上数据结构笔记
  6. 【Intellij Idea】设置JDK
  7. JavaScript图片库
  8. W3 Total Cache+Hacklog Remote Attachment Upyun
  9. node.js异步式IO与事件式编程
  10. task2 EDA数据分析
  11. 【ES10(2019)】Array扩展 flat / flatMap
  12. Python编写人机对战小游戏(抓小狐狸)
  13. JavaScript获取文本框光标的像素位置(转载)
  14. 最近在学习Floquet理论,主要是想用于稳定性分析
  15. (学信网联合万方)免费论文查重
  16. Mysql 主从复制实战(学习笔记十三)
  17. excel导出图片---HSSFWorkbook--SXSSFWorkbook
  18. 转:【PAMI2018】ASTER_An Attentional Scene Text Recognizer with Flexible Rectification
  19. 编译原理——语法制导翻译并产生中间代码(布尔表达式和控制语句)
  20. LeetCode 844 题解

热门文章

  1. VB访问SQL Server数据库技术全揭密
  2. Spring JPA使用CriteriaBuilder动态构造查询
  3. hashMap和hashTable的区别(个人总结)
  4. BZOJ3224普通平衡树
  5. 邮件服务器fixpost服务(1)
  6. 剑指offer面试题23:从上到下打印二叉树(树的层序遍历)
  7. parseInt(08)或parseInt(09)转换返回0的解决办法
  8. Java基础学习网站收藏
  9. 使用 Maven 执行 java main class(java应用程序)
  10. 物流运输系统设计浅谈