我想知道如何从ServletOutputStream(或任何其他OutputStream)中删除所有内容,以防万一发生异常并且我需要outputStream为空以便不包含“一半数据” >
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
}
}
答案 0 :(得分:1)
ServletResponse.resetBuffer()
清除缓冲区。
ServletResponse.reset()
清除缓冲区,标头和响应代码。
答案 1 :(得分:0)
使用下面的重置语句。
ServletOutPutStream outputStream = response.getOutputStream();
outputStream.resetBuffer();
最好先清除缓冲区,然后再开始写入。