zoukankan      html  css  js  c++  java
  • Sevlet reouestDisaatcher:的forward()kinclude的区别

    forward()与include()的区别,主要表现在标准输出流的开启时间不同

    forward()

    forward这个单词表示的意思是“向前”,说明当前的请求还未结束,需要继续“向前”,所以服务器就不会在这里打开标准输出流。所以此时写入到out中的数据是不会写入到客户端浏览器中的。
    使用forward()方法的Servlet,其标准输出流还未开启。
    对客户端的响应可定不是forward()方法的Servlet给出的

    include()

    这个单词表示的意思是“包含”,说明当前的请求已经结束,可以对客户端进行响应了。其不仅将自己的数据写入到了标准输出流,还要将其他数据包含到自己的输出流中。
    使用include()方法的Servlet,其标准输出流已经打开。
    对客户端的响应是由使用include()方法的Servlet给出的。

    结论

    在使用forward()进行请求转发时,使用forward()的Servlet不应向Response中写入数据,
    若要写入数据,则应使用include()进行转发。

  • 相关阅读:
    codevs1127
    codevs1041
    C#预处理指令
    C#基本语句与C++区别
    iOS.TextKit.01.凸版印刷效果
    iOS.常用设计模式.02.委托模式
    iOS.常用设计模式.01.单例模式
    iOS.iPad.03.UIModal
    iOS.iPad.02.UIPopoverViewController
    iOS.iPad.01.UISplitViewController
  • 原文地址:https://www.cnblogs.com/lyhLive/p/13697143.html
Copyright © 2011-2022 走看看