指定程序在每天凌晨2点运行:
1.初始化定时器
public void contextInitialized(ServletContextEvent arg0) { //自定义时间执行::::凌晨2点 Calendar cal = Calendar.getInstance(); cal.set(Calendar.HOUR_OF_DAY, 2); cal.set(Calendar.MINUTE, 0); cal.set(Calendar.SECOND, 0); Date date = cal.getTime(); //第一次执行定时任务的时间 每天早上2点 //此时要在 第一次执行定时任务的时间 加一天,以便此任务在下个时间点执行。如果不加一天,任务会立即执行。 if(date.before(new Date())){ date = this.addDay(date,1); } //0替换成cal.getTime(); timer = new Timer(); timer.schedule(new TimerTask(){ @Override public void run() { logger.info("每天0点开始执行取数"); GetWid(); //需要运行的方法 } }, date, 1000*60*60*24); }
2. 构建修改日期的方法
/** * 如果当前重启服务或者执行任务超过了设定的时间,程序会立即运行,需要在当前日期+1 * @param date * @param i * @return */ private Date addDay(Date date, int num) { Calendar startDT = Calendar.getInstance(); startDT.setTime(date); startDT.add(Calendar.DAY_OF_MONTH, num); return startDT.getTime(); }
相关推荐
JAVA定时器,只要服务开启,就能指定某些代码在某个时刻执行,例如:监狱里罪犯的余刑天数,每天都要减少,就可以设置一个定时器在每天的23:59:59来执行减少余刑天数的天。
JAVA定时器JAVA定时器.pdf
java定时器
java 定时器(Timer) java 定时器(Timer) java 定时器(Timer)
实例助解java定时器设置及停止的方法
Java定时器的使用 Java程序 Java写的一个定时器
讲解Java定时器开发
java定时器,import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask; 规定每天几点执行一次
Java定时器简例
Java后台定时器代码Java后台定时器代码Java后台定时器代码Java后台定时器代码Java后台定时器代码
在应用开发中,经常需要一些周期性的操作,比如每5分钟执行某一操作等。 对于这样的操作最方便、高效的实现方式就是使用java.util.Timer工具类。
java定时器,timer类操作详解 java定时器,timer类操作详解
java定时器 spring定时器:包括spring定时器的详细配置以及说明 包含所需的jar包
Java定时器.pdf
java web 定时器例子
用java实现最小堆的定时器,和用时间轮实现定时器,可以运行,简单的实现
java定时器例子,使用 java.util.TimerTask 类来实现定时执行
java定时器说明与应用
比较全面的定时器,里面有例子,照着例子就可以学会spring和java定时器。