Java 如何清除ServletOutputStream的内容?
我想知道如何删除ServletOutputStream(或任何其他OutputStream)中的所有内容,以防在某个点发生异常,并且我需要OutputStream为空,以便它不包含“一半数据”Java 如何清除ServletOutputStream的内容?,java,servlets,io,outputstream,Java,Servlets,Io,Outputstream,我想知道如何删除ServletOutputStream(或任何其他OutputStream)中的所有内容,以防在某个点发生异常,并且我需要OutputStream为空,以便它不包含“一半数据” ServletResponse.resetBuffer()清除缓冲区 ServletResponse.reset()清除缓冲区、标头和响应代码。使用下面的重置语句 ServletOutPutStream outputStream=response.getOutputStream() outputStrea
ServletResponse.resetBuffer()
清除缓冲区
ServletResponse.reset()
清除缓冲区、标头和响应代码。使用下面的重置语句
ServletOutPutStream outputStream=response.getOutputStream()
outputStream.resetBuffer()
最好先清除缓冲区,然后开始写入缓冲区。您可以在try块的末尾刷新,如果出现一些异常,则它将位于catch块中,您可以设置outputStream=null;然后关闭连接。
doSmthInServlet(HttpServletResponse respone, ....) {
try {
ServletOutPutStream outputStream = response.getOutputStream();
//.....
//writing to outputstream
//exception occurred
} catch (Exception e) {
// and here I need to clear all the contents of outputStream
}
}