jsp sendRedirect()方法進行跳轉詳解

來源:互聯網
上載者:User

直接跳轉到hello.html頁面 response_demo03.jsp

 

 代碼如下 複製代碼

<%@ page language="java" contentType="text/html" pageEncoding="GBK"%> 

<html> 

<head> 

<title>測試</title> 

</head> 

<body> 

<% 

 response.sendRedirect("hello.html"); 

%> 

</body> 

</html>

這種跳轉屬於用戶端跳轉

<jsp:forward>屬於服務端跳轉,地址不會發生改變,可以將request屬性儲存到跳轉頁
response.sendRedirect()屬於用戶端跳轉,地址會發生改變,不可以將request屬性儲存到跳轉頁
還有一個區別就是:服務端跳轉會立刻跳轉,而用戶端跳轉在整個頁面執行完後才進行跳轉

伺服器端跳轉response_demo04.jsp

 代碼如下 複製代碼

<%@ page language="java" contentType="text/html" pageEncoding="GBK"%> 

<html> 

<head> 

<title>測試</title> 

</head> 

<body> 

<% 

 System.out.println("----------forward跳轉之前的-------------"); 

%> 

<jsp:forward page="hello.html"/> 

<% 

 System.out.println("----------forward跳轉之後的-------------"); 

%> 

</body> 

</html>


 

顯示結果:hello
但tomcat伺服器後台顯示----------forward跳轉之前的-------------

 代碼如下 複製代碼

用戶端跳轉 response_demo05.jsp

view sourceprint?<%@ page language="java" contentType="text/html" pageEncoding="GBK"%> 

<html> 

<head> 

<title>測試</title> 

</head> 

<body> 

<% 

 System.out.println("----------response跳轉之前-------------"); 

%> 

<% 

 response.sendRedirect("hello.html"); 

%> 

<% 

 System.out.println("----------response跳轉之後------------"); 

%> 

</body> 

</html>

tomcat伺服器後台顯示----------response跳轉之前-------------
     ----------response跳轉之後-------------

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.