面試時(shí)經(jīng)常會(huì)問(wèn)到forward(轉(zhuǎn)發(fā))和redirect(重定向)兩種方法的區(qū)別。

主要的區(qū)別整理如下(不足之處,請(qǐng)網(wǎng)友指正):

1、數(shù)據(jù)共享的區(qū)別
forward: 指向新頁(yè)面時(shí),繼續(xù)使用當(dāng)前的request作用域,可以共享request里面的數(shù)據(jù)。
redirect: 進(jìn)入新的request作用域,當(dāng)前的request中存放的變量全部失效。

2、執(zhí)行效率的區(qū)別
forward: 執(zhí)行效率較高。
redirect: 執(zhí)行效率較低。

3、使用范圍的區(qū)別
forward:方法只能在同一個(gè)Web應(yīng)用程序內(nèi)的資源之間轉(zhuǎn)發(fā)請(qǐng)求。
redirect:不僅可以重定向到同一可以重定向到任何應(yīng)用程序內(nèi)的資源,還可以重定向到其他Web站點(diǎn)的資源。

4、地址欄顯示的區(qū)別
forward 瀏覽器地址欄顯示原來(lái)的URL。
redirect 瀏覽器地址欄顯示已轉(zhuǎn)向的新的URL。