我想实现一个java接口HttpServletResponseWrapper
,我在StackOverflow(Looking for an example for inserting content into the response using a servlet filter)中得到了答案
在这个答案中我们创建了一个ByteArrayPrintWriter
,但在此代码中我们为什么不关闭ByteArrayPrintWriter
流,这样有什么问题吗?谢谢你的帮助。
答案 0 :(得分:0)
在这种特殊情况下,没有必要关闭ByteArrayOutputStream
,因为我们知道内部实现没有缓冲区或任何需要close()
调用的东西。字节直接写入后备阵列,并且结束为NO-OP
。
/**
* Closing a <tt>ByteArrayOutputStream</tt> has no effect. The methods in
* this class can be called after the stream has been closed without
* generating an <tt>IOException</tt>.
*/
public void close() throws IOException {
}
为了保持一致性,仍然可以打电话给close()
,但这是您的选择。无论哪种方式都没问题。