在java web 工程中 怎么把文件在一段时间后自动删除?
现有功能要求上传的文件在24小时后自动删除 (java b/s工程 )
知道怎么实现的帮指点下 肯定加分
[解决办法]
文件上传时,要记录文件名和上传时间,存在一个表里.做个定时器,每30分钟读表判断一次,上传时间超过24小时的文件就删除.
[解决办法]
import java.util.Timer;
import java.util.TimerTask;
Timer timer = new Timer();
public void reTimer() {
timer.schedule(new TimerTask() {
public void run() {
..................
}
}, 0, 1000);
}
[解决办法]
凑个热闹
启动时加载所有的文件上传时间,有新的文件直接add进去
这样每次遍历文件时不需要去读数据。
不过不知道10万数量级的Collection会不会内存溢出。呵呵。
[解决办法]
一个线程啊,至于里面的监听循环怎么写就随你了
你上穿的时候得到毫秒数,文件名取成 毫秒数.扩展名的方法
然后写一个触发器,超过24小时得就删除文件
[解决办法]
楼上说的几种方案了,可以试试ContextListener,里面启个线程,之后你按你喜好了