日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Spring mvc 转发、重定向

發布時間:2025/3/21 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring mvc 转发、重定向 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

?? ?spring控制器最后返回一個ModelAndView(urlName),其中urNamel可以是一個視圖名稱,由視圖解析器負責解析后將響應流寫回客戶端;也可以通過redirect/forward:url方式轉到另一個控制器進行處理.

  • redirect方式相當于"response.sendRedirect()".這種方式外部特征就是瀏覽器地址欄最后顯示的路徑是轉發后的新的路徑.工作方式是這樣的, 服務器端會首先發一個response給瀏覽器, 然后瀏覽器收到這個response后再發一個requeset給服務器, 然后服務器發新的response給瀏覽器. 這時頁面收到的request是一個新從瀏覽器發來的.這種方式的結果是:
    • A.在轉發前后有兩個不同的request對象,轉發前后的兩個控制器在request上的參數(request.getParameter())和request屬性(request.getAttribute())不能共享;
    • B.如果轉發前后的兩個控制器都配置在spring 攔截器范圍內,這樣攔截器會攔截前后兩個request,即會攔截兩次;
    • C.最后返回到瀏覽器后,因為地址欄顯示的是轉發后的url,所以刷新頁面時只會執行后面的url映射的控制器.

    ?

  • forward方式相當于request.getRequestDispatcher().forward(request,response)?.這種方式的外部特征是瀏覽器地址顯示的路徑是轉發前的路徑.工作方式是這樣,forward 發生在服務器內部,在前一個控制器處理完畢后,直接進入下一個控制器處理, 并將最后的response發給瀏覽器. 這種方式的結果是:
    • A.轉發前后是同一個request,后一個控制器可共享前一個控制器的參數與屬性;
    • B.因為是同一個request,攔截器只會攔截前一個url,如果前一個url在映射時未配置到攔截器攔截,則攔截后一個url,即只攔截一次;
    • C.最后返回到瀏覽器后,因為地址欄顯示的是轉發前的url,所以刷新頁面時會依次執行前后兩個控制器.

    轉載于:https://www.cnblogs.com/BigAngel/p/3674394.html

    《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

    總結

    以上是生活随笔為你收集整理的Spring mvc 转发、重定向的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。