forward是服務器請求資源,服務器直接訪問目標地址的URL,把那個URL的響應內容讀取過來,然後把這些內容再發給瀏覽器,瀏覽器根本不知道服務器發送的內容從哪裏來的,所以它的地址欄還是原來的地址.
redirect是服務端根據邏輯,發送一個狀態碼,告訴瀏覽器重新去請求那個地址,所以地址欄顯示的是新的URL.
2.從數據共享來說
forward:轉發頁面和轉發到的頁面可以共享request裏面的數據.
redirect:不能共享數據.
3.從運用地方來說
forward:只能在項目內進行轉發,一般用於用戶登陸的時候,根據角色轉發到相應的模塊
redirect:可在項目間進行跳轉,一般用於用戶註銷登陸時返回主頁面和跳轉到其它的網站等
4.從效率來說
forward:高.
redirect:低.