转载

在JSP中实现页面跳转

JSP应用开发是很多编程爱好者的关注,它是实现具体功能的途径,JSP实现页面的跳转功能需要使用jsp forward Action。

语法

  1. jsp:forward page="{relativeURL|%= expression %}"/ 或  
  2. jsp:forward page="{relativeURL|%= expression %}"  
  3. jsp:param name="parameterName" 
  4. value="{parameterValue|%= expression %}"/+/jsp:forward  
  5.  

这个action使您可以将request向前到另外一个页面。它只有一个属性,page。Page应有一个相对的URL组成。这可以是一个静态的值或者是能够在被请求的时候计算得到的值,就如下面两个例子一般:

  1. jsp:forward page="/utils/errorReporter.jsp"/  
  2. jsp:forward page="%= someJavaExpression %"/  
  3. !supportEmptyParas]> 
  4.  

现在以一个具体例子来说明:在test1.jsp中使用forward使其跳转到test2.jsp页面中,实现页面跳转。

JSP实现页面跳转之Test1.jsp

  1. HTML  
  2. HEAD  
  3. TITLEforward test/TITLE  
  4. !supportEmptyParas]> 
  5. /HEAD  
  6. !supportEmptyParas]> 
  7. BODY BGCOLOR="#FFFFFF"  
  8. !--跳转到test2.jsp--!  
  9. jsp:forward page="/test2.jsp"/  
  10. /BODY  
  11. /HTML  
  12. !supportEmptyParas]> 
  13.  

JSP实现页面跳转之Test2.jsp

  1. HTML  
  2. HEAD  
  3. TITLE forward test /TITLE  
  4. !supportEmptyParas]> 
  5. /HEAD  
  6. !supportEmptyParas]> 
  7. BODY BGCOLOR="#FFFFFF"  
  8. %out.println("这是jsp2.jsp页面产生出的输出");%  
  9. /BO#@62;  
  10. /HTML  
  11. !supportEmptyParas]> 
  12.  

运行test1.jsp,可在浏览器中看见,这样的JSP应用开发:"这是jsp2.jsp页面产生出的输出"的输出信息。但是如果你在test1.jsp和test2.jsp这两个页面中有参数传递怎么办呢?用get方式吧,不但总的长度有限制,使用现在十分不方便,而且有时候还不安全。其实我们完全可以使用jsp1.1中给forward里提供的para属性就可以解决。现以test3.jsp和test4.jsp来说明。

  1. !supportEmptyParas]> 
  2. Test1.jsp  
  3. HTML  
  4. HEAD  
  5. TITLE forward test /TITLE  
  6. !supportEmptyParas]> 
  7. /HEAD  
  8. !supportEmptyParas]> 
  9. BODY BGCOLOR="#FFFFFF"  
  10. jsp:forward page="/test4.jsp"  
  11. jsp:param name="name" value="powerman"/  
  12. jsp:param name="address" value=" 北京市海淀区西三环北路21号久凌大厦北楼505室"/  
  13. /jsp:forward  
  14. /BODY  
  15. /HTML  
  16. !supportEmptyParas]> 
  17. test2.jsp  
  18. HTML  
  19. HEAD  
  20. TITLEforward test/TITLE  
  21. !supportEmptyParas]> 
  22. /HEAD  
  23. !supportEmptyParas]> 
  24. BODY BGCOLOR="#FFFFFF"  
  25. %  
  26. out.println("这是jsp4.jsp页面产生出的输出"+"br");  
  27. out.println("姓名:"+request.getParameter("name")+"br");  
  28. out.println("地址:"+request.getParameter("address")+"br");  
  29. !supportEmptyParas]> 
  30. %  
  31. /BODY  
  32. /HTML  
  33.  

运行Test3.jsp,可在浏览器中看见输出信息 :

  1. "这是jsp4.jsp页面产生出的输出  
  2. 姓名:powerman  
  3. 地址:北京市海淀区西三环北路21号久凌大厦北楼505室"  
  4.  

通过以上的JSP实现的页面跳转是不是很有意思呢?对你再编程的思路是不是有点启发呢?

正文到此结束
Loading...