java org.apache的common-fileupload的源码,看到最后的FileCleanerCleanup.java关于临时文件删除的有点疑问

forestss 2015-07-17 04:39:28
最近在研究java org.apache的common-fileupload的源码,看到最后的FileCleanerCleanup.java关于临时文件删除的有点疑问,我把临时文件门限设置成4个字节做为测试,jsp为简单表单上传文件到服务器,servelet调用fileupload解析文件流并保存到指定位置。

FileCleanerCleanup.java是public class FileCleanerCleanup implements ServletContextListener

public void contextDestroyed(ServletContextEvent sce) {
getFileCleaningTracker(sce.getServletContext()).exitWhenFinished();
}
getFileCleaningTracker(sce.getServletContext())返回的是FileCleaningTracker类
问题:本次上传完文件到服务器后,临时文件没有删除;按照逻辑,是ServletContextListener类调用contextDestroyed才能进行临时文件删除

那意味着我用myeclipse+tomcat测试,当stop server才能进行文件删除吗?

上传文件后,关闭浏览器,难道也不能触发“ ServletContextListener类的contextDestroyed函数吗?”
...全文
58 点赞 收藏 1
写回复
1 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
nickycheng 2015-07-20
关闭浏览器很显然是不行的。 contextDestroyed方法顾名思义,在context重启,stop时候才会调用
回复
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2015-07-17 04:39
社区公告
暂无公告