1. 共同點(diǎn):
都實(shí)現(xiàn)了根據(jù)自己的條件實(shí)現(xiàn)的頁(yè)面得跳轉(zhuǎn)。
2. 區(qū)別
類別 |
概念 |
共享數(shù)據(jù) |
應(yīng)用 |
Redirect |
URL重新定向:可以是任意的URL |
不能共享request里面的數(shù)據(jù) |
一般用于用戶注銷登錄時(shí)返回主頁(yè)面和跳轉(zhuǎn)到其它的網(wǎng)站等等 |
Forward |
頁(yè)面的轉(zhuǎn)發(fā):只能是同一個(gè)Web應(yīng)用程序的其他Web組件 |
轉(zhuǎn)發(fā)頁(yè)面和轉(zhuǎn)發(fā)到的頁(yè)面可以共性request里面的數(shù)據(jù) |
一般用于用戶登錄的時(shí)候根據(jù)角色轉(zhuǎn)發(fā)到相應(yīng)的模塊等等 |
3. 例子:
譬如:client 通過(guò)XXX\index.jsp?name=gauss&pwd=123訪問(wèn)index.jsp,而index.jsp中有<jsp:forward page="login.jsp"/>,則在login.jsp中可以通過(guò)request.getParameter()得到name和pwd,而<%response.sendRedirect("login.jsp");%>得不到。
4. 注意
一般在index.jsp頁(yè)面之前有個(gè)提交數(shù)據(jù)的頁(yè)面default.jsp,則defautl.jsp頁(yè)面提交的數(shù)據(jù)就可以在login.jsp頁(yè)面得到,而不是得到index.jsp頁(yè)面提交的數(shù)據(jù),index.jsp頁(yè)面只是執(zhí)行的都是一個(gè)轉(zhuǎn)發(fā)操作當(dāng)然在里面可以增加也寫(xiě)業(yè)務(wù)操作,他可以得到request的數(shù)據(jù),用XXX\index.jsp?name=gauss&pwd=123這種方式登錄就是省略了index.jsp前面的一個(gè)頁(yè)面提交數(shù)據(jù)而已。