• JSP教程:1天玩转JSP网站开发技术
  • JSP是什么?
  • JSP的特点与工作流程
  • JSP与ASP、PHP的比较
  • JSP页面的组成及其元素
  • JSP开发环境搭建(Tomcat的安装和配置)
  • 第一个JSP程序
  • JSP注释(多种注释详解)
  • JSP声明:变量、方法和类的声明
  • JSP中嵌入Java代码
  • JSP表达式
  • JSP开发模式(四种模式)
  • JSP常见错误以及解决方案
  • JSP指令详解(三大指令)
  • JSP page指令
  • JSP include指令
  • JSP指令应用实例
  • JSP动作
  • JSP include动作
  • JSP param动作
  • JSP forward动作
  • JSP plugin动作
  • JSP useBean动作
  • JSP setProperty动作
  • JSP getProperty动作
  • JSP application 对象
  • JSP out对象:向客户端输出数据
  • JSP request对象:获取客户端的请求信息
  • JSP response对象:响应客户端的请求并向客户端输出信息
  • JSP session对象
  • JSP pageContext对象
  • JSP page对象
  • JSP config对象
  • JSP获取并显示字符串长度
  • 什么是JavaBean?
  • JavaBean工具
  • JavaBean规范
  • JavaBean的属性(Simple、Indexed、Bound、Constrained)
  • JavaBean的Scope属性
  • JavaBean事件
  • JavaBean实现用户登录界面
  • Servlet是什么?
  • Servlet的生命周期
  • Servlet的类和方法
  • Servlet客户端跳转
  • EL是什么?(详解)
  • JSP EL表达式的基本语法及运算符的优先级(一览表)
  • JSP EL 点(.)运算符和下标([])运算符
  • JSP EL算数运算符
  • JSP EL关系运算符
  • JSP EL逻辑运算符
  • JSP EL条件运算符
  • JSP EL empty空运算符
  • EL表达式中的常量与变量
  • EL表达式的保留字
  • EL表达式的内置对象及其作用域
  • 使用EL表达式访问JavaBean
  • 使用EL表达式访问集合
  • EL表达式内置对象param和paramValues
  • EL表达式内置对象cookie
  • EL表达式内置对象initParam
  • JDBC 的定义及产品组件
  • 建立JDBC连接
  • 利用JDBC发送SQL语句
  • JDBC API ResultSet接口(记录集接口)
  • JDBC RowSet接口
  • JDBC BaseRowSet类和CachedRowSet类
  • 填充CachedRowSet对象记录集(三种方法)
  • File类(在JSP中的使用)详解
  • 使用字节流读/写文件
  • RandomAccessFile类
  • JSP文件上传
  • XML是什么?
  • XML的基本语法
  • JDK 中的 XML API
  • DOM解析XML
  • SAX解析XML
  • DOM4j解析XML
  • 在大多数的网络应用程序中,都有这样的情况:在用户成功登录后转向欢迎页面,此处的“转向”,就是跳转。<jsp:forward> 动作标记就可以实现页面的跳转,用来将请求转到另外一个 JSP、HTML 或相关的资源文件中。

    <jsp:forward> 动作标记被执行后,当前的页面将不再被执行,而是去执行该标记指定的目标页面,但是,用户此时在地址栏中看到的仍然是当前网页的地址,而内容却已经是转向的目标页面了。

    其语法格式如下:

    1. <jsp:forward page="relativeURL" | "<%=expression %>" />

    如果转向的目标是一个动态文件,还可以向该文件传递参数,使用格式如下:

    1. <jsp:forward page="relativeURL" | "<%=expression %>" />
    2. <jsp:param name="pName1" value="pValue1 | <%=expression1 %>" />
    3. <jsp:param name="pName2" value="pValue2 | <%=expression2 %>" />

    说明如下:

    1. page 属性用于指定要跳转到的目标文件的相对路径,也可以通过执行一个表达式来获得。如果该值以“/”开头,表示在当前应用的根目录下查找目标文件,否则,就在当前路径下查找目标文件。请求被转向到的目标文件必须是内部的资源,即当前应用中的资源。如果想通过 forward 动作转发到外部的文件中,将出现资源不存在的错误信息。
    2. forward 动作执行后,当前页面将不再被执行,而是去执行指定的目标页面。
    3. 转向到的文件可以是 HTML 文件、JSP 文件、程序段,或者其他能够处理 request 对象的文件。
    4. forward 动作实现的是请求的转发操作,而不是请求重定向。它们之间的一个区别就是:进行请求转发时,存储在 request 对象中的信息会被保留并被带到目标页面中;而请求重定向是重新生成一个 request 请求,然后将该请求重定向到指定的 URL,所以,事先储存在 request 对象中的信息都不存在了。

    【例1】使用 <jsp:forward> 动作标记实现网页跳转。

    ① 创建主页面 2-22.jsp,通过表单输入用户名和密码,单击“登录”按钮,利用 <jsp:forward> 动作标记跳转到页面 target.jsp。具体代码如下:

    1. <%@ page contentType="text/html;charset=utf-8" %>
    2. <html>
    3. <body>
    4. <form action=" " method="post" name="Form"> <!--提交给本页处理-->
    5. 用户名:<input name="UserName" type="text" /> <br/>
    6. 密&nbsp;&nbsp;码:<input name="UserPwd" type="text" /> <br/>
    7. <input type="submit" value="登录" />
    8. </form>
    9. <%
    10. //当单击“登录”按钮时,调用Form1.submit()方法提交表单至本文件,
    11. //用户名和密码均不为空时,跳转到targe.jsp,并且把用户名和密码以参数形式传递
    12. String s1=null,s2=null;
    13. s1=request.getParameter("UserName");
    14. s2=request.getParameter("UserPwd");
    15. if(s1!=null && s2!=null)
    16. {
    17. %>
    18. <jsp:forward page="target.jsp" >
    19. <jsp:param name="Name" value="<%=s1%>" />
    20. <jsp:param name="Pwd" value="<%=s2%>" />
    21. </jsp:forward >
    22. <%
    23. }
    24. %>
    25. </body>
    26. </html>

    ② 创建所转向的目标文件 target.jsp,具体代码如下:

    1. <%@ page contentType="text/html;charset=utf-8" %>
    2. <html>
    3. <body>
    4. <%
    5. String strName=request.getParameter("UserName");
    6. String strPwd=request.getParameter("UserPwd");
    7. out.println(strName+"您好,您的密码是:"+strPwd);
    8. %>
    9. </body>
    10. </html>

    ③ 运行 2-22.jsp,结果如图 1 所示。

    使用<jsp:forward>动作标记实现网页跳转

    使用<jsp:forward>动作标记实现网页跳转
    图1 使用<jsp:forward>动作标记实现网页跳转