servlet中输入输出流关闭问题
一般情况输入输出流用完肯定需要在finally里面关闭
但是servlet的输入输出流是否用完也必须手动关闭?
比如我需要用到request.getInputStream()
我直接使用 java.util.Properties 的load方法 load(request.getInputStream)
这样不就没法去关闭了,还是必须先定义InputStream in = request.getInputStream()
然后使用load(in),最后使用in.close()?
另外,JAVA的IO流使用了装饰模式,关闭最外面的流的时候会自动调用被包装的流的close()方法
是否意味着不管怎样去包装,其实只需要关闭最外面的流就可以了?
或者最外面的流最终调用的也是被包装的close()方法,那么我直接关闭最里层流就可以了?
如果只需要关闭最里层的,而外面的close()方法又调用的是被包装的close(),那是否就意味着关闭任意一个流就可以了?
但是servlet的输入输出流是否用完也必须手动关闭?
比如我需要用到request.getInputStream()
我直接使用 java.util.Properties 的load方法 load(request.getInputStream)
这样不就没法去关闭了,还是必须先定义InputStream in = request.getInputStream()
然后使用load(in),最后使用in.close()?
另外,JAVA的IO流使用了装饰模式,关闭最外面的流的时候会自动调用被包装的流的close()方法
是否意味着不管怎样去包装,其实只需要关闭最外面的流就可以了?
或者最外面的流最终调用的也是被包装的close()方法,那么我直接关闭最里层流就可以了?
如果只需要关闭最里层的,而外面的close()方法又调用的是被包装的close(),那是否就意味着关闭任意一个流就可以了?
...全文
相关推荐
Servlet实现下载
Servlet实现文件下载源代码 Servlet实现文件下载源代码 Servlet实现文件下载源代码
javax.servlet jar包---解决找不到javax.servlet.*等问题
javax.servlet的jar包,解决找不到javax.servlet.*等问题的!欢迎下载!!
基于Java文件输入输出流实现文件上传下载功能
主要为大家详细介绍了基于Java文件输入输出流实现文件上传下载功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
Spring关闭Tomcat Servlet容器时内存泄漏问题解决方案
主要介绍了Spring关闭Tomcat Servlet容器时内存泄漏问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
文件上传/下载使用输入输出流操作文件
简单的文件流操作文件,对文件进行上传,下载功能。供初学者学习等


Web 开发
