java实现定时任务

来源:互联网 发布:复旦大学大数据研究院 编辑:程序博客网 时间:2024/05/16 09:26

long daySpan =24 * 60 * 60 * 1000;
// 规定的时间运行
final SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd 11:30:00”);
// 首次运行时间
Date startTime = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”).parse(sdf.format(new Date()));

// 如果今天的已经过了 首次运行时间就改为明天
if(System.currentTimeMillis() > startTime.getTime()){
startTime = new Date(startTime.getTime() + daySpan);
}
Timer t = new Timer();
TimerTask task = new TimerTask(){
@Override
public void run() {
//执行代码块
}
};
// 以每24小时执行一次
t.scheduleAtFixedRate(task, startTime, daySpan);