java定时执行任务举例

来源:互联网 发布:javascript是什么知乎 编辑:程序博客网 时间:2024/06/16 07:54
import java.util.TimerTask;/** * 执行内容 * @author admin_Hzw * */public class Task extends TimerTask {public void run() {System.out.println("我有一头小毛驴!"); }}


import java.util.Calendar;import java.util.Date;import java.util.Timer;/** * 任务管理 * @author admin_Hzw * */public class TimerManager {/** * @param args */public static void main(String[] args) {new TimerManager();  }//时间间隔(一天)private static final long PERIOD_DAY = 24 * 60 * 60 * 1000;public TimerManager() {Calendar calendar = Calendar.getInstance();calendar.set(Calendar.HOUR_OF_DAY, 1); //凌晨1点calendar.set(Calendar.MINUTE, 0);calendar.set(Calendar.SECOND, 0);Date date=calendar.getTime(); //第一次执行定时任务的时间//如果第一次执行定时任务的时间 小于当前的时间//此时要在 第一次执行定时任务的时间加一天,以便此任务在下个时间点执行。如果不加一天,任务会立即执行。if (date.before(new Date())) {date = this.addDay(date, 1);}Timer timer = new Timer();Task task = new Task();//安排指定的任务在指定的时间开始进行重复的固定延迟执行。timer.schedule(task,date,PERIOD_DAY);  }// 增加或减少天数public Date addDay(Date date, int num) {Calendar startDT = Calendar.getInstance();startDT.setTime(date);startDT.add(Calendar.DAY_OF_MONTH, num);return startDT.getTime();}}


0 0
原创粉丝点击