最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于重定向RedirectAttributes的用法解析

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

重定向RedirectAttributes的用法

剛才做項目,遇到了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)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • EJB基礎(chǔ)知識(入門必看)

    EJB基礎(chǔ)知識(入門必看)

    下面小編就為大家?guī)硪黄狤JB基礎(chǔ)知識(入門必看)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • 深入了解java.util.Arrays的使用技巧

    深入了解java.util.Arrays的使用技巧

    在這篇文章中,我們將來帶大家看看?java.util.Arrays?,我們可以使用?Arrays?創(chuàng)建,比較,排序,搜索,stream?和轉(zhuǎn)化數(shù)組,感興趣的小伙伴可以了解一下
    2023-02-02
  • Mybatis反射核心類Reflector的實現(xiàn)

    Mybatis反射核心類Reflector的實現(xiàn)

    本文主要介紹了Mybatis反射核心類Reflector的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-11-11
  • Java語言實現(xiàn)簡單FTP軟件 FTP軟件遠(yuǎn)程窗口實現(xiàn)(6)

    Java語言實現(xiàn)簡單FTP軟件 FTP軟件遠(yuǎn)程窗口實現(xiàn)(6)

    這篇文章主要為大家詳細(xì)介紹了Java語言實現(xiàn)簡單FTP軟件,F(xiàn)TP軟件遠(yuǎn)程窗口的實現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • Java 數(shù)據(jù)結(jié)構(gòu)之時間復(fù)雜度與空間復(fù)雜度詳解

    Java 數(shù)據(jù)結(jié)構(gòu)之時間復(fù)雜度與空間復(fù)雜度詳解

    算法復(fù)雜度分為時間復(fù)雜度和空間復(fù)雜度。其作用: 時間復(fù)雜度是度量算法執(zhí)行的時間長短;而空間復(fù)雜度是度量算法所需存儲空間的大小
    2021-11-11
  • Springmvc加ajax實現(xiàn)上傳文件并頁面局部刷新

    Springmvc加ajax實現(xiàn)上傳文件并頁面局部刷新

    這篇文章主要介紹了Springmvc加ajax實現(xiàn)上傳文件并頁面局部刷新,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • Java使用CountDownLatch實現(xiàn)網(wǎng)絡(luò)同步請求的示例代碼

    Java使用CountDownLatch實現(xiàn)網(wǎng)絡(luò)同步請求的示例代碼

    CountDownLatch 是一個同步工具類,用來協(xié)調(diào)多個線程之間的同步,它能夠使一個線程在等待另外一些線程完成各自工作之后,再繼續(xù)執(zhí)行。被將利用CountDownLatch實現(xiàn)網(wǎng)絡(luò)同步請求,異步同時獲取商品信息組裝,感興趣的可以了解一下
    2023-01-01
  • SpringBoot深入理解之內(nèi)置web容器及配置的總結(jié)

    SpringBoot深入理解之內(nèi)置web容器及配置的總結(jié)

    今天小編就為大家分享一篇關(guān)于SpringBoot深入理解之內(nèi)置web容器及配置的總結(jié),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • SpringBoot中引入MyBatisPlus的常規(guī)操作

    SpringBoot中引入MyBatisPlus的常規(guī)操作

    這篇文章主要介紹了SpringBoot中引入MyBatisPlus的常規(guī)操作,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • SpringBoot+VUE實現(xiàn)數(shù)據(jù)表格的實戰(zhàn)

    SpringBoot+VUE實現(xiàn)數(shù)據(jù)表格的實戰(zhàn)

    本文將使用VUE+SpringBoot+MybatisPlus,以前后端分離的形式來實現(xiàn)數(shù)據(jù)表格在前端的渲染,具有一定的參考價值,感興趣的可以了解一下
    2021-08-08

最新評論

宁陵县| 云安县| 巫溪县| 儋州市| 武宣县| 彩票| 大庆市| 苍梧县| 林芝县| 孟连| 曲松县| 千阳县| 奇台县| 永顺县| 汾西县| 闻喜县| 洪洞县| 贵阳市| 贺州市| 松阳县| 平乡县| 布尔津县| 略阳县| 福州市| 静安区| 临猗县| 襄樊市| 河东区| 孟州市| 和龙市| 岳普湖县| 衡南县| 长宁区| 台东县| 仁怀市| 苏尼特左旗| 德庆县| 于田县| 济南市| 冷水江市| 泾源县|