国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JSP > 正文

JSP頁(yè)面跳轉(zhuǎn)方法小結(jié)

2020-07-27 21:25:23
字體:
供稿:網(wǎng)友

 實(shí)現(xiàn)JSP頁(yè)面跳轉(zhuǎn),有如下幾種方式:

n        使用href超鏈接標(biāo)記              (客戶端跳轉(zhuǎn))
n        使用JavaScript                             (客戶端跳轉(zhuǎn))
n        提交表單                                      (客戶端跳轉(zhuǎn))
n        使用response對(duì)象                            (客戶端跳轉(zhuǎn))
n        使用forward動(dòng)作標(biāo)記                 (服務(wù)器端跳轉(zhuǎn))
n        使用RequestDispatcher類     (服務(wù)器端跳轉(zhuǎn))

1、使用response對(duì)象

       (1) 調(diào)用sendRedirect()方法,重定向。

注意以下兩點(diǎn):

Ø        sendRedirect()可以帶參數(shù)傳遞

例如:

sendRedirect(“/main.jsp?userName=zhangsan”
 

Ø        sendRedirect()之后,應(yīng)該緊跟一句return

sendRedirect()是通過瀏覽器來做轉(zhuǎn)向的,所以只有在頁(yè)面處理完成后,才會(huì)有實(shí)際的動(dòng)作。既然你已經(jīng)要做轉(zhuǎn)向了,那么后面的輸出還有什么意義呢?而且有可能會(huì)因?yàn)楹竺娴妮敵鰧?dǎo)致轉(zhuǎn)向失敗。

       (2) 調(diào)用setHeader()方法,等待若干秒后,自動(dòng)重定向到另一個(gè)頁(yè)面。 

       可以通過response對(duì)象,調(diào)用setHeader(“Refresh”, “時(shí)間; 目標(biāo)頁(yè)面”)方法,實(shí)現(xiàn)等待若干秒后,自動(dòng)重定向到另一個(gè)頁(yè)面。

response.setHeader("Refresh", "10; url=login.jsp");  

 
上述代碼表示等待10秒后,將自動(dòng)重定向到login.jsp這個(gè)頁(yè)面。

2、使用forward動(dòng)作標(biāo)記

response重定向和forward跳轉(zhuǎn)的區(qū)別

(1) response重定向

n        執(zhí)行完頁(yè)面的所有代碼,再跳轉(zhuǎn)到目標(biāo)頁(yè)面。
n        跳轉(zhuǎn)到目標(biāo)頁(yè)面后,瀏覽器地址欄中的URL會(huì)改變。
n        在瀏覽器端重定向。
n        可以跳轉(zhuǎn)到其它服務(wù)器上的頁(yè)面,

例如:response.sendRedirect(“http://www.baidu.com”)

(2) forward跳轉(zhuǎn)

n        直接跳轉(zhuǎn)到目標(biāo)頁(yè)面,其后的代碼不再執(zhí)行。
n        跳轉(zhuǎn)到目標(biāo)頁(yè)面后,瀏覽器地址欄中的URL不會(huì)改變。
n        在服務(wù)器端重定向。
n        無法跳轉(zhuǎn)到其它服務(wù)器上的頁(yè)面。 

3、使用RequestDispatcher類

基本用法:

RequestDispatcher rd = request.getRequestDispatcher("目標(biāo)頁(yè)面");rd.forward(request,response);

使用RequestDispatcher實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn),和使用forward動(dòng)作標(biāo)記實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn),其基本原理是一樣的。

response重定向和RequestDispatcher跳轉(zhuǎn)的區(qū)別

(1) response重定向

n        執(zhí)行完頁(yè)面的所有代碼,再跳轉(zhuǎn)到目標(biāo)頁(yè)面。
n        跳轉(zhuǎn)到目標(biāo)頁(yè)面后,瀏覽器地址欄中的URL會(huì)改變。
n        在瀏覽器端重定向。
n        可以跳轉(zhuǎn)到其它服務(wù)器上的頁(yè)面,

例如:response.sendRedirect(“http://www.baidu.com”) 

(2) RequestDispatcher跳轉(zhuǎn)

n        執(zhí)行完所有代碼,再跳轉(zhuǎn)到目標(biāo)頁(yè)面。
n        跳轉(zhuǎn)到目標(biāo)頁(yè)面后,瀏覽器地址欄中的URL不會(huì)改變。
n        在服務(wù)器端重定向。
n        無法跳轉(zhuǎn)到其它服務(wù)器上的頁(yè)面。 

forward跳轉(zhuǎn)和RequestDispatcher跳轉(zhuǎn)的區(qū)別

(1) forward跳轉(zhuǎn)

n        forward動(dòng)作標(biāo)記之后的代碼,不再執(zhí)行,立即跳轉(zhuǎn)到目標(biāo)頁(yè)面。
n        指定目標(biāo)頁(yè)面時(shí),既可以使用絕對(duì)路徑,也可以使用相對(duì)路徑。 

(2) RequestDispatcher跳轉(zhuǎn)

n        執(zhí)行完所有代碼,包括RequestDispatcher之后的所有代碼,再跳轉(zhuǎn)到目標(biāo)頁(yè)面。
n        指定目標(biāo)頁(yè)面時(shí),只能使用絕對(duì)路徑。

以上所述是小編給大家介紹的JSP頁(yè)面跳轉(zhuǎn)方法小結(jié),希望對(duì)大家有所幫助,如果大家有疑問歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 方正县| 土默特右旗| 伽师县| 屯留县| 荃湾区| 邓州市| 绩溪县| 嘉黎县| 澎湖县| 安庆市| 翁源县| 新平| 类乌齐县| 阿鲁科尔沁旗| 当涂县| 兴隆县| 策勒县| 保康县| 全椒县| 揭东县| 嘉荫县| 绥江县| 大庆市| 泰顺县| 郓城县| 天峻县| 淅川县| 连云港市| 林芝县| 定安县| 个旧市| 瑞丽市| 吉隆县| 宁明县| 洞头县| 旺苍县| 庄浪县| 湟源县| 洱源县| 宜城市| 商都县|