1. 程式人生 > 程式設計 >SpringMVC中轉發與重定向的區別淺析

SpringMVC中轉發與重定向的區別淺析

轉發和重定向

相同點

都是web開發中資源跳轉的方式。

不同點

轉發:是伺服器內部的跳轉,瀏覽器的位址列不會發生變化。從一個頁面到另一個頁面的跳轉還是同一個請求,也即是隻有一個請求響應。可以通過request域來傳遞物件。

重定向:是瀏覽器自動發起對跳轉目標的請求,瀏覽器的位址列會發生變化。從一個頁面到另一個頁面的跳轉是不同的請求,也即是有兩個或兩個以上的不同的請求的響應。無法通過request域來傳遞物件。

在SpringMVC中實現轉發和重定向

(1)在SpringMVC中仍然以傳統方式進行轉發和重定向

下面的程式碼中login.jsp就是跳轉後的頁面

轉發:

requst.getRequestDispatcher("login.jsp").forword(request,response);

重定向:

response.sendRedirect("login.jsp");

(2)SpringMVC提供了便捷的轉發和重定向的方式

//轉發
@RequestMapping("/forward")
public String forword(){
 return "forward:/index.jsp";
}
//重定向
@RequestMapping("redirect")
public String redirect(){
 return "redirect:/index.jsp";
}

總結

到此這篇關於SpringMVC中轉發與重定向區別的文章就介紹到這了,更多相關SpringMVC轉發與重定向區別內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!