美文网首页
标准动作 2018-01-08

标准动作 2018-01-08

作者: pluss | 来源:发表于2018-01-08 14:40 被阅读0次

<jsp:forword>标准动作

总结

  1. 功能是将请求转发给web应用中的其他资源,但是需要注意这个标签之后的内容不会再执行,而且之前写进响应的内容会被清空。
  2. 用法:
    -- 不加参数
    <jsp:forword page="" />
    -- 加参数
    <jsp:forward page="a.jsp">
    <jsp:param value="aaa" name="login_name"/>
    </jsp:forward>

《Head First Servlets & JSP》P413

<jsp:forword>标准动作,可以从一个jsp转发到web应用中的任何其他资源
示例:

hello.jsp页面
<title>welcome</title>
</head>
<body>
welcome to our page!
<%
    if(request.getParameter("userName")==null){
%>
        <jsp:forward page="handleIt.jsp" />
<%   //如果userName为null,停在这里,将整个请求转给别人,
        //这个页面的任何内容都不会出现在响应里
    }
%>
Hello ${param.userName}
</body>
</html>
handleIt.jsp页面
<title>login</title>
</head>
<body>
We're sorry... you need to login again.
<form action ="hello.jsp" method="get">
    Name:<input name="userName" type="text">
    <input  type="submit" value="login">
</form>
</body>
</html>
访问hello.jsp,因为userName为null所以将请求转发到handelIt.jsp页面
handelIt页面将表单提交给hello.jsp

利用<jsp:forword>,响应缓冲区会在转发之前清空

发生转发时,请求转发到的目标资源首先会清空响应缓冲区!
意思就是转发前写到响应的所有内容都会清掉。

如果在请求转发之前就已经提交了响应,要转发时就会出现异常。

hello.jsp页面
<title>welcome</title>
</head>
<body>
welcome to our page!
<%
    out.flush();
%>
<%
    if(request.getParameter("userName")==null){
%>
        <jsp:forward page="handleIt.jsp" />
<%   
    }
%>
Hello ${param.userName}
</body>
</html>

out.flush()输出了缓存区中内容 接下来容器看到要转发,啪!出现异常

相关文章

  • 标准动作 2018-01-08

    标准动作 总结 功能是将请求转发给web应用中的其他资源,但是需要注意这个标签之后的内容...

  • servlet 转发和重定向

    请求转发:方式:request.getRequestDispacther("/test.jsp").forword...

  • JSP基础学习笔记(3)--JavaBean

    JSP动作标签:

  • jsp指令和动作

    include指令 include动作 include指令和动作的区别 动作

  • 八、JSP动作元素

    JSP动作元素 与JSP指令元素不同的是,JSP动作元素在请求处理阶段起作用。 JSP动作元素是用XML语法写成的...

  • JSP动作元素

    1、什么是JSP动作元素 JSP动作元素(action elements),动作元素为请求处理阶段提供信息。动作元...

  • jsp语法

    Jsp语法包含:注释、jsp指令、jsp脚本元素、jsp动作元素。 Jsp注释: Htm...

  • JavaBean

    jsp动作JavaBean jsp动作.png 作用域javaBean的四个作用域.png

  • 五、JSP的7个动作指令

    动作指令只是在运行时的动作,编译指令在将JSP翻译成Servlet时起作用 JSP的主要动作指令 jsp:forw...

  • JSP动作

    格式 JSP常用动作:include(加载当前页面和引用页面的全部代码) 如果需要对引用页面传值需要使用param...

网友评论

      本文标题:标准动作 2018-01-08

      本文链接:https://www.haomeiwen.com/subject/eztbnxtx.html