亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

java語言

java servlet頁面跳轉(zhuǎn)的方法

時間:2024-10-28 22:25:36 java語言 我要投稿
  • 相關(guān)推薦

java servlet頁面跳轉(zhuǎn)的方法

  導(dǎo)語:一個servlet就是Java編程語言中的一個類,它被用來擴展服務(wù)器的性能,服務(wù)器上駐留著可以通過“請求-響應(yīng)”編程模型來訪問的應(yīng)用程序。下面是java servlet頁面跳轉(zhuǎn)的方法,一起來學(xué)習(xí)下吧:

  Servlet:

  當(dāng)然,在servlet中,一般跳轉(zhuǎn)都發(fā)生在doGet, doPost等方法里面。

  1) redirect 方式

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

  頁面的路徑是相對路徑。sendRedirect可以將頁面跳轉(zhuǎn)到任何頁面,不一定局限于本web應(yīng)用中,如:

  response.sendRedirect("http://www.jb51.net");

  跳轉(zhuǎn)后瀏覽器地址欄變化。

  這種方式要傳值出去的話,只能在url中帶parameter或者放在session中,無法使用request.setAttribute來傳遞。

  2) forward方式

  RequestDispatcher dispatcher = request.getRequestDispatcher("/a.jsp");

  dispatcher .forward(request, response);

  頁面的路徑是相對路徑。forward方式只能跳轉(zhuǎn)到本web應(yīng)用中的頁面上。

  跳轉(zhuǎn)后瀏覽器地址欄不會變化。

  使用這種方式跳轉(zhuǎn),傳值可以使用三種方法:url中帶parameter,session,request.setAttribute

  JSP:

  1) response.sendRedirect();

  和servlet的response.sendRedirect()方式一樣。

  此語句前不允許有out.flush(),如果有,會有異常:

  java.lang.IllegalStateException: Can't sendRedirect() after data has committed to the client.

  at com.caucho.server.connection.AbstractHttpResponse.sendRedirect(AbstractHttpResponse.java:558)

  ...

  跳轉(zhuǎn)后瀏覽器地址欄變化

  如果要跳到不同主機下,跳轉(zhuǎn)后,此語句后面的語句會繼續(xù)執(zhí)行,如同新開了線程,但是對response的操作已經(jīng)無意義了;

  如果要跳到相同主機下,此語句后面的語句執(zhí)行完成后才會跳轉(zhuǎn);

  2) response.setHeader("Location","");

  此語句前不允許有out.flush(),如果有,頁面不會跳轉(zhuǎn)。

  跳轉(zhuǎn)后瀏覽器地址欄變化

  此語句后面的語句執(zhí)行完成后才會跳轉(zhuǎn)

  以上就是java servlet頁面跳轉(zhuǎn)的方法的詳細內(nèi)容。


【java servlet頁面跳轉(zhuǎn)的方法】相關(guān)文章:

PHP頁面跳轉(zhuǎn)實現(xiàn)技巧09-19

PHP中實現(xiàn)頁面跳轉(zhuǎn)07-06

PHP頁面跳轉(zhuǎn)幾種實現(xiàn)技巧07-26

編寫Java無腳本的JSP頁面的方法08-18

Java Servlet編程所需的軟件及環(huán)境配置10-04

Dreamweaver跳轉(zhuǎn)菜單的方法技巧06-29

編寫Java無腳本的JSP頁面的一些方法08-03

php頁面緩存實現(xiàn)方法07-20

PHP頁面漏洞分析的方法08-13

PHP利用header跳轉(zhuǎn)失效的解決方法09-06