Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ServletResponse#flushBuffer()包含哪些内容?_Java_Servlets_Response_Flush - Fatal编程技术网

Java ServletResponse#flushBuffer()包含哪些内容?

Java ServletResponse#flushBuffer()包含哪些内容?,java,servlets,response,flush,Java,Servlets,Response,Flush,如果我打电话 我需要打电话吗 和/或 (同上) 和/或)两种方法都是完全不同的: 刷新() flush()方法用于将缓冲响应刷新到客户端。它还将导致提交响应头 默认情况下,如果到达内部缓冲区,服务器容器将自动调用此函数 如果希望以自定义块的形式发送响应,则应显式调用 close() close()方法用于关闭响应流,以便不再写入数据 默认情况下,服务器容器将在Servlet生命周期结束时自动调用它 如果您不想让写入响应超出任何一点,则应该显式调用。尝试这样做将引发IOException。这感觉不

如果我打电话

我需要打电话吗

和/或

(同上)

和/或)

两种方法都是完全不同的: 刷新()

flush()
方法用于将缓冲响应刷新到客户端。它还将导致提交响应头

默认情况下,如果到达内部缓冲区,服务器容器将自动调用此函数

如果希望以自定义块的形式发送响应,则应显式调用

close()

close()
方法用于关闭响应流,以便不再写入数据

默认情况下,服务器容器将在Servlet生命周期结束时自动调用它


如果您不想让写入响应超出任何一点,则应该显式调用。尝试这样做将引发IOException。

这感觉不太对。。。难道你不想在开始的时候让你的编写器,在你做你的事情的时候把它保存在一个成员变量中,然后在你完成的时候调用flush并关闭这个成员变量吗?你可以使用其中一个,不需要两者都使用。如果您使用OutputStream,应该将其关闭。@RobertHarvey实际上,我使用的是
IOUtils.copyragle(myInputStream,response.getOutputStream())。问题是,
response.flushBuffer()
会自动关闭内部流吗?Tomcat有一个方法负责关闭响应流。你需要关闭你做的那些。那么呢?我更新了我的答案。请看一下。我在“网络”选项卡中看不到部分响应。它只显示一个带有完整响应的请求。如何在客户端验证这一点?