1. 程式人生 > >Hello JSP!——動作元素篇

Hello JSP!——動作元素篇

       <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動作指令之前程式碼被執行。