当前位置: 首页 > 图文教程 > 网络编程 > JSP > JSP编程实现页面跳转

JSP
我认为JSP有问题(上)
我认为JSP有问题(下)
jsp“抓”网页代码的程序
关于在bean里面打印html的利弊看法
bean里面如何打印到html页面
jdbc3中的RowSet 接口规范
Apusic Application Server1.0中jsp源代码泄漏漏洞
Unify的eWave ServletExec拒绝服务漏洞
通过提交超长的GET请求导致IBM HTTP Server远程溢出
在HTTP请求中添加特殊字符导致暴露JSP源代码文件
Resin 1.2 重要源代码暴露漏洞
多中WEB服务器的通用JSp源代码暴露漏洞
Tomcat 暴露JSP文件内容
IBM WebSphere Application Server 暴露JSP文件内容
JRun 2.3.x 范例文件暴露站点安全信息
BEA WebLogic 暴露源代码漏洞
IBM WebSphere Application Server 3.0.2 存在暴露源代码漏洞
Tomcat 3.1 存在暴露网站路径问题
Sun Java Web Server 能让攻击者远程执行任意命令
Netscape 修复 JAVA 安全漏洞

JSP编程实现页面跳转


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 53 ::
收藏到网摘: n/a

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页面产生出的输出");%>
</BO #@62;
</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号"