亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

基于重定向RedirectAttributes的用法解析

 更新時間:2021年12月17日 09:25:30   作者:彭松  
這篇文章主要介紹了基于重定向RedirectAttributes的用法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

重定向RedirectAttributes的用法

剛才做項(xiàng)目,遇到了redirectAttributes使用的問題,上網(wǎng)找了找,看到一篇寫的很不錯的博客,解決我對于RedirectAttributes的困惑,也給大家推薦下。

RedirectAttributes 是Spring mvc 3.1版本之后出來的一個功能,專門用于重定向之后還能帶參數(shù)跳轉(zhuǎn)的的工具類

它有兩種帶參的方式

第一種:

redirectAttributes.addAttributie("prama",value); 這種方法相當(dāng)于在重定向鏈接地址追加傳遞的參數(shù),例如:
redirectAttributes.addAttributie("prama1",value1);
redirectAttributes.addAttributie("prama2",value2);
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)注解,采用傳參的方式。

頁面獲值

例如:

redirectAttributes.addFlashAttributie("prama1",value1);
redirectAttributes.addFlashAttributie("prama2",value2);
return:"redirect:/path/list.jsp" 

在以上參數(shù)均可在list.jsp頁面使用EL表達(dá)式獲取到參數(shù)值${prama*}

controller獲得redirectAttributes重定向的值

例如:

redirectAttributes.addFlashAttributie("prama1",value1);
redirectAttributes.addFlashAttributie("prama2",value2);
return:"redirect:/path/list/"

@RequestMapping("list")
public List<Student> list(@RequestPrama(value = "prama1")String  prama1,
   @RequestPrama(value = "prama2")String  prama2,...
){
    //TODO
    //your code
}

通過在controller中的list方法體中可以獲取到參數(shù)值。

RedirectAttributes詳解

RedirectAttributes 的兩個方式的獲取總結(jié):

1、addFlashAttribute

  @RequestMapping (value= "hello" )
     public  String test(RedirectAttributes ra){
         ra.addFlashAttribute( "test" ,  "test" );
         return  "redirect:/test" ;
     }
     @RequestMapping (value= "test" )
     public  String test( @ModelAttribute ( "test" )String test){
         System.out.println(test);
         return  "redirect:/hello" ;
     }

2、addAttribute

@RequestMapping (value= "hello" )
public  String test(RedirectAttributes ra){
     ra.addAttribute( "test" ,  "test" );
     return  "redirect:/test" ;
}
@RequestMapping (value= "test" )
public  String test(HttpServletRequest request ){
     String test = request.getParameter( "test" );
     
     System.out.println(test);
     return  "redirect:/hello" ;
}

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Mybatis中設(shè)置全局變量的方法示例

    Mybatis中設(shè)置全局變量的方法示例

    我們在平時的工作中有時候是需要在配置文件中配置全局變量的,我最近工作中就遇到了,所以索性記錄下來,下面這篇文章主要跟大家介紹了關(guān)于Mybatis中設(shè)置全局變量的方法示例,需要的朋友可以參考下。
    2017-07-07
  • Java設(shè)計模式之代理模式_動力節(jié)點(diǎn)Java學(xué)院整理

    Java設(shè)計模式之代理模式_動力節(jié)點(diǎn)Java學(xué)院整理

    這篇文章主要介紹了Java設(shè)計模式之代理模式,本文詳細(xì)的介紹了什么事代理模式和相關(guān)的類和接口,有興趣的可以了解一下
    2017-08-08
  • Mybatis實(shí)現(xiàn)查詢相冊數(shù)據(jù)列表流程講解

    Mybatis實(shí)現(xiàn)查詢相冊數(shù)據(jù)列表流程講解

    這篇文章主要介紹了Mybatis實(shí)現(xiàn)查詢相冊數(shù)據(jù)列表流程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-12-12
  • 解決MyBatis返回結(jié)果類型為Boolean的問題

    解決MyBatis返回結(jié)果類型為Boolean的問題

    這篇文章主要介紹了解決MyBatis返回結(jié)果類型為Boolean的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Mybatis-plus操作json字段實(shí)戰(zhàn)教程

    Mybatis-plus操作json字段實(shí)戰(zhàn)教程

    這篇文章主要介紹了Mybatis-plus操作json字段實(shí)戰(zhàn)教程,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-02-02
  • 使用SpringBoot配置https(SSL證書)

    使用SpringBoot配置https(SSL證書)

    這篇文章主要介紹了使用SpringBoot配置https(SSL證書),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Java文件讀寫IO/NIO及性能比較詳細(xì)代碼及總結(jié)

    Java文件讀寫IO/NIO及性能比較詳細(xì)代碼及總結(jié)

    這篇文章主要介紹了Java文件讀寫IO/NIO及性能比較詳細(xì)代碼及總結(jié),具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • Java中Collection、List、Set、Map之間的關(guān)系總結(jié)

    Java中Collection、List、Set、Map之間的關(guān)系總結(jié)

    今天小編就為大家分享一篇關(guān)于Java中Collection、List、Set、Map之間的關(guān)系總結(jié),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Java編程實(shí)現(xiàn)對象克?。◤?fù)制)代碼詳解

    Java編程實(shí)現(xiàn)對象克?。◤?fù)制)代碼詳解

    這篇文章主要介紹了Java編程實(shí)現(xiàn)對象克隆(復(fù)制)代碼詳解,涉及了克隆的原因,如何實(shí)現(xiàn)克隆,克隆的一般步驟,深克隆與淺克隆的介紹等相關(guān)內(nèi)容,具有一定借鑒價值,需要的朋友可以參考下。
    2017-11-11
  • JVM?中的?returnAddress過程詳解

    JVM?中的?returnAddress過程詳解

    JVM的畢竟是個虛擬機(jī),是一種規(guī)范,雖說符合馮諾依曼的計算機(jī)設(shè)計理念,但是他并不是實(shí)體計算機(jī),所以他的組成也不是什么存儲器,控制器,運(yùn)算 器,輸入輸出設(shè)備,本文給大家介紹JVM?中的?returnAddress,感興趣的朋友一起看看吧
    2022-04-04

最新評論