Java Web Servlet請(qǐng)求轉(zhuǎn)發(fā)與重定向 (No.4.2)


一要门、解釋請(qǐng)求轉(zhuǎn)發(fā)與重定向的原理和效果:

形象解釋:


請(qǐng)求轉(zhuǎn)發(fā)與重定向.png

情景:現(xiàn)在A同學(xué)要申請(qǐng)一個(gè)教師進(jìn)行班級(jí)活動(dòng),有張老師和李主任兩個(gè)人,A學(xué)生會(huì)先去找張老師申請(qǐng)教室。

1.請(qǐng)求轉(zhuǎn)發(fā):
A同學(xué)找到了張老師虏劲,然而張老師沒法決定洽洁,所以張老師去找李主任团秽,李主任同意疯趟,然后張老師通知A同學(xué)申請(qǐng)成功了。

2.重定向:
A同學(xué)去找張老師锡溯,張老師說:“我不管這個(gè)赶舆,你去找李主任吧”。所以A同學(xué)去找李主任祭饭,然后得到了審批芜茵。

在Java Web中,同學(xué)A就是用戶端網(wǎng)頁(yè)甜癞,張老師就是Servlet(服務(wù)器端)夕晓,李主任就是其他資源,例如其他頁(yè)面悠咱。

所以蒸辆,請(qǐng)求轉(zhuǎn)發(fā)其實(shí)是服務(wù)器操作征炼,是有Servlet來負(fù)責(zé)轉(zhuǎn)發(fā)請(qǐng)求并返回結(jié)果。
而重定向是服務(wù)器告訴客戶端要訪問的地址躬贡,然后客戶端去訪問這個(gè)頁(yè)面谆奥,也就是客戶端操作


二、請(qǐng)求轉(zhuǎn)發(fā):

請(qǐng)求轉(zhuǎn)發(fā)能夠保持?jǐn)?shù)據(jù)拂玻,也就是說從 index.jsp (客戶端)發(fā)送的數(shù)據(jù)經(jīng)由Servlet發(fā)送給目標(biāo)頁(yè)面(假設(shè)為thanks.jsp)之后酸些,能從 thanks.jsp 中取出index.jsp中發(fā)送的數(shù)據(jù)。
Servlet保持了客戶端發(fā)來的數(shù)據(jù)檐蚜,使得轉(zhuǎn)發(fā)之后仍然能取出數(shù)據(jù)
因此魄懂,請(qǐng)求轉(zhuǎn)發(fā)在數(shù)據(jù)傳輸效率上要高一些

實(shí)例:

設(shè)置請(qǐng)求轉(zhuǎn)發(fā):

請(qǐng)求轉(zhuǎn)發(fā).PNG

將數(shù)據(jù)發(fā)送到 thanks.jsp:
請(qǐng)求轉(zhuǎn)發(fā)2.PNG

1.可以看到,頂部的地址欄顯示的Servlet名闯第,而不是 thanks.jsp
這是因?yàn)槭欣酰琒ervlet轉(zhuǎn)發(fā)了請(qǐng)求到了thanks.jsp,然后返回給客戶端咳短,這個(gè)過程對(duì)于客戶端是不可見的填帽,就像學(xué)生A不知道張老師與李主任之間的過程一樣

2.第二點(diǎn):在thanks.jsp中仍然能夠取得在 index.jsp中輸入的數(shù)據(jù),所以Servlet保持了數(shù)據(jù)



三咙好、重定向:

客戶端訪問服務(wù)器之后篡腌,服務(wù)器給客戶端返回一個(gè)信息,客戶端根據(jù)這個(gè)信息再去找目標(biāo)網(wǎng)頁(yè)勾效,所以其實(shí)相當(dāng)于兩次請(qǐng)求嘹悼,因而第一次發(fā)送的數(shù)據(jù)在第二次發(fā)送時(shí)就會(huì)丟失。(就像學(xué)生A對(duì)張老師說的話還得再對(duì)李主任說一遍一樣)

實(shí)例:

這次使用重定向的方式:

response.sendRedirect("/thanks.jsp");

點(diǎn)擊發(fā)送請(qǐng)求葵第,結(jié)果:

process4162.PNG

結(jié)果分析:
1.這里訪問到了 thanks.jsp绘迁,所以可以確認(rèn)的確重定向到了 thanks.jsp
2.正是因?yàn)閿?shù)據(jù)沒有傳過來合溺,所以全是 null ,在 thanks.jsp中處理數(shù)據(jù)時(shí)就出現(xiàn)了 空指針錯(cuò)誤卒密。
(用之前的例子來說:同學(xué)A從張老師那里轉(zhuǎn)到了李主任,卻忘了自己要說什么 )


四棠赛、使用情景

請(qǐng)求轉(zhuǎn)發(fā):

  • 在用戶登錄時(shí)使用請(qǐng)求轉(zhuǎn)發(fā)時(shí)哮奇,維持?jǐn)?shù)據(jù)以進(jìn)行檢測(cè)

重定向:

  • 在用戶注銷時(shí)返回主頁(yè)面時(shí),丟失數(shù)據(jù)從而退出當(dāng)前賬戶



講的不錯(cuò)的參考博客:
https://blog.csdn.net/qq_41376740/article/details/81064385
https://blog.csdn.net/bailu66/article/details/6914384

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末睛约,一起剝皮案震驚了整個(gè)濱河市鼎俘,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌辩涝,老刑警劉巖贸伐,帶你破解...
    沈念sama閱讀 218,284評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異怔揩,居然都是意外死亡捉邢,警方通過查閱死者的電腦和手機(jī)脯丝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來伏伐,“玉大人宠进,你說我怎么就攤上這事∶牯幔” “怎么了材蹬?”我有些...
    開封第一講書人閱讀 164,614評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)吝镣。 經(jīng)常有香客問我堤器,道長(zhǎng),這世上最難降的妖魔是什么末贾? 我笑而不...
    開封第一講書人閱讀 58,671評(píng)論 1 293
  • 正文 為了忘掉前任吼旧,我火速辦了婚禮,結(jié)果婚禮上未舟,老公的妹妹穿的比我還像新娘圈暗。我一直安慰自己,他們只是感情好裕膀,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評(píng)論 6 392
  • 文/花漫 我一把揭開白布员串。 她就那樣靜靜地躺著,像睡著了一般昼扛。 火紅的嫁衣襯著肌膚如雪寸齐。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評(píng)論 1 305
  • 那天抄谐,我揣著相機(jī)與錄音渺鹦,去河邊找鬼。 笑死蛹含,一個(gè)胖子當(dāng)著我的面吹牛毅厚,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播浦箱,決...
    沈念sama閱讀 40,309評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼吸耿,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了酷窥?” 一聲冷哼從身側(cè)響起咽安,我...
    開封第一講書人閱讀 39,223評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蓬推,沒想到半個(gè)月后妆棒,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,668評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評(píng)論 3 336
  • 正文 我和宋清朗相戀三年糕珊,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蛋铆。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,981評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡放接,死狀恐怖刺啦,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情纠脾,我是刑警寧澤玛瘸,帶...
    沈念sama閱讀 35,705評(píng)論 5 347
  • 正文 年R本政府宣布,位于F島的核電站苟蹈,受9級(jí)特大地震影響糊渊,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜慧脱,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評(píng)論 3 330
  • 文/蒙蒙 一渺绒、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧菱鸥,春花似錦宗兼、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至鹊漠,卻和暖如春主到,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背躯概。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工登钥, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人娶靡。 一個(gè)月前我還...
    沈念sama閱讀 48,146評(píng)論 3 370
  • 正文 我出身青樓牧牢,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親固蛾。 傳聞我的和親對(duì)象是個(gè)殘疾皇子结执,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容