首页 > 其他 > 详细

Seelot reouestDisaatcher:的forward()kinclude的区别

时间:2020-09-19 18:39:02      阅读:54      评论:0      收藏:0      [点我收藏+]

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

forward()

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

include()

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

结论

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

Seelot reouestDisaatcher:的forward()kinclude的区别

原文:https://www.cnblogs.com/lyhLive/p/13697143.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!