Hello JSP!——動作元素篇
阿新 • • 發佈:2019-02-12
<jsp:forward>動作元素用來轉移使用者的請求,使得使用者請求的頁面從一個頁面跳轉到另一個頁面。這種跳轉為伺服器端跳轉,所以使用者的位址列不會發生任何變化。
<jsp:forward>動作元素的語法格式如下。
<jsp:forward page="跳轉檔案的URL地址”>
<jsp:forward>動作元素只包含一個屬性即page,page屬性用來指定跳轉檔案的URL地址。
一.使用<jsp:forward>動作元素實現頁面跳轉
使用<jsp:forward>動作元素實現頁面跳轉非常簡單,只需要設定其page屬性為跳轉到的檔案URL地址即可。
示例:ForwardAction.jsp
<%@ page language="java" contentType="text/html;charset=gb2312"%> <html> <head> <title>jsp:forward動作指令</title> </head> <body> 使用jsp:forward動作指令實現伺服器端跳轉 <jsp:forward page="Forwarded.jsp"></jsp:forward> </body> </html>
Forwarded.jsp
<%@ page language="java" contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>跳轉到的頁面</title>
</head>
<body>
跳轉到的頁面
</body>
</html>
執行結果:
由圖中可以看到,使用者的位址列沒有發生任何變化。
二.跳轉執行流程
如果JSP檔案包含<jsp:forward>動作元素,那麼JSP會首先執行<jsp:forward>動作元素之前的程式碼。只有執行到<jsp:forward>動作元素時才會進行跳轉,跳轉完成後將執行被跳轉的JSP檔案,<jsp:forward>動作元素之後的程式碼不會被執行。
示例:ForwardAction2.jsp
<%@ page language="java" contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>jsp:forward動作指令</title>
</head>
<body>
使用jsp:forward動作指令實現伺服器端跳轉。
<%
System.out.println("jsp:forward動作指令之前程式碼被執行");
%>
<jsp:forward page="Forwarded.jsp"></jsp:forward>
<%
System.out.println("jsp:forward動作指令之後程式碼被執行");
%>
</body>
</html>
執行結果:
在Tomcat伺服器控制檯可以看到輸出瞭如下字串 jsp:forward動作指令之前程式碼被執行。