
 
 | 
| 技术资料  > JSP技术 > Jsp/Servlet : JSP教程(六)-怎么在JSP中跳转到别一页面 |  
JSP教程(六)-怎么在JSP中跳转到别一页面 March 25,2004 |  
  在JSP中使用jsp forward Action来实现页面的跳转功能。 
 
  语法: 
 
<jsp:forward page="{relativeURL|<%= expression %>}"/> 或 
<jsp:forward page="{relativeURL|<%= expression %>}"> 
<jsp:param name="parameterName" 
value="{parameterValue|<%= expression %>}"/>+</jsp:forward> 
 
  这个action使您可以将request向前到另外一个页面。它只有一个属性,page。Page应有一个相对的URL组成。这可以是一个静态的值或者是能够在被请求的时候计算得到的值,就如下面两个例子一般: 
 
<jsp:forward page="/utils/errorReporter.jsp"/> 
<jsp:forward page="<%= someJavaExpression %>"/> 
!supportEmptyParas]>  
 
  现在以一个具体例子来说明:在test1.jsp中使用forward使其跳转到test2.jsp页面中。 
 
Test1.jsp 
<HTML> 
<HEAD> 
<TITLE>forward test</TITLE> 
!supportEmptyParas]>  
</HEAD> 
!supportEmptyParas]>  
<BODY BGCOLOR="#FFFFFF"> 
<!--跳转到test2.jsp--!> 
<jsp:forward page="/test2.jsp"/> 
</BODY> 
</HTML> 
!supportEmptyParas]>  
test2.jsp 
<HTML> 
<HEAD> 
<TITLE> forward test </TITLE> 
!supportEmptyParas]>  
</HEAD> 
!supportEmptyParas]>  
<BODY BGCOLOR="#FFFFFF"> 
<%out.println("这是jsp2.jsp页面产生出的输出");%> 
</BODY> 
</HTML> 
!supportEmptyParas]>  
  运行test1.jsp,可在浏览器中看见:"这是jsp2.jsp页面产生出的输出"的输出信息。但是如果你在test1.jsp和test2.jsp这两个页面中有参数传递怎么办呢?用get方式吧,不但总的长度有限制,使用现在十分不方便,而且有时候还不安全。其实我们完全可以使用jsp1.1中给forward里提供的para属性就可以解决。现以test3.jsp和test4.jsp来说明。 
 
!supportEmptyParas]>  
Test1.jsp 
<HTML> 
<HEAD> 
<TITLE> forward test </TITLE> 
!supportEmptyParas]>  
</HEAD> 
!supportEmptyParas]>  
<BODY BGCOLOR="#FFFFFF"> 
<jsp:forward page="/test4.jsp"> 
<jsp:param name="name" value="powerman"/> 
<jsp:param name="address" value=" 北京西大街188号"/> 
</jsp:forward> 
</BODY> 
</HTML> 
!supportEmptyParas]>  
test2.jsp 
<HTML> 
<HEAD> 
<TITLE>forward test</TITLE> 
!supportEmptyParas]>  
</HEAD> 
!supportEmptyParas]>  
<BODY BGCOLOR="#FFFFFF"> 
<% 
out.println("这是jsp4.jsp页面产生出的输出"+"<br>"); 
out.println("姓名:"+request.getParameter("name")+"<br>"); 
out.println("地址:"+request.getParameter("address")+"<br>"); 
!supportEmptyParas]>  
%> 
</BODY> 
</HTML> 
 
  运行test3.jsp,可在浏览器中看见: 
 
  "这是jsp4.jsp页面产生出的输出 
  姓名:powerman 
  地址:北京西大街188号" 
 
的输出信息  
         |  
 
 | 
  
Copyright © 2001-2008 Shenzhen Hiblue Software Team All rights reserved