JSP的7个动作指令-forward指令

来源:互联网 发布:人工智能产业园区 编辑:程序博客网 时间:2024/04/30 05:40

forward指令用于将页面响应控制转发给另外的页面。既可以转发给静态的HTML页面,也可以转发到动态的JSP页面,或者转发到容器的Servlet。

JSP的forward指令格式如下:

对于JSP1.0,使用如下语法:

<jsp:forward page="{relativeURL|<%expression%>}"/>

对于JSP1.1以上,可使用如下语法:

<jsp:forward page="{relativeURL|<%=expression%>}">    {<jsp:param.../>}</jsp:forward>

第二种语法用于在转发时增加额外的请求参数。增加的请求参数的值可以通过HttpServletRequest类的getParameter方法获取。

举例:

页面jsp-forward.jsp将所有客户端请求转发到forward-result.jsp页面。转发时,增加一个请求参数:参数名为age,参数值为NULL。页面jsp-forward.jsp的源代码如下:

<%@ page contentType="text/html; charset=gb2312" language="java"%><!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.0 Transitional//EN”><HTML><BODY><jsp:forward page="forward-result.jsp"><jsp:param name="age" value=""/></jsp:forward></BODY></HTML>
在forward-result.jsp页面中,使用request内置对象来获取增加的请求参数值。forward-result.jsp的代码如下:

<%@ page contentType="text/html; charset=gb2312" language="java" errorPage="ErrorPage.jsp"%><!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.0 Transitional//EN”><HTML><BODY><%=request.getParameter("username")%></BODY></HTML>
此时运行jsp-forward.jsp的结果为null,因为value的值为null。运行结果截图如下:


form-forward.jsp页面将表单域的值提交到jsp-forward页。form-forward.jsp的代码如下:

<%@ page contentType="text/html; charset=gb2312" language="java"%><!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.0 Transitional//EN”><HTML><BODY><form id="login" method="post" action="jsp-forward.jsp"><INPUT TYPE="text" NAME="username"><INPUT TYPE="submit" value="login"></FORM></BODY></HTML>
运行form-forward.jsp页面结果如下:




在表单中输入hello,页面自动跳转到jsp-forward.jsp,并输出hello。结果如下:


原创粉丝点击