Spring定時器TimerTask用法:
在tomcat服務啟動,spring定時器容器加載時會執行定時器裡的任務,可設置時間間隔和延遲執行時間,具體做法如下:
定時器java代碼:
package com.coalmine.desktop;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimerTask;
public class Task extends TimerTask {
@Override
//定時器入口,run()裡面是你的任務作業
public void run() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = new Date();
System.out.println(sdf.format(date) + " 執行TimerTask定時器===============");
}
}
applicationContext.xml配置如下:
<!-- spring定時任務配置 -->
<bean id="deskTask" class="com.coalmine.desktop.Task"></bean>
<bean id="scheduledTask"
class="org.springframework.scheduling.timer.ScheduledTimerTask">
<property name="timerTask">
<ref bean="deskTask" />
</property>
<!--任務執行周期 5s (此處單位是毫秒)-->
<property name="period">
<value>5000</value>
</property>
<!--延時10s 執行任務 -->
<property name="delay">
<value>10000</value>
</property>
</bean>
<!--啟動定時器 -->
<bean id="timerBean"
class="org.springframework.scheduling.timer.TimerFactoryBean">
<property name="scheduledTimerTasks">
<list>
<ref bean="scheduledTask" />
</list>
</property>
</bean>
OK,就這麼簡單,當啟動服務後加載完定時器,延遲10秒後,每隔5秒執行一次run()