java.util.Timer:实现周期Job
/**
*java.util.Timer:
* --工作原理:将处理模型放入到单线程队列中,在加入队列的时候对模型进行标记,之后通过线程实现查找最近执行目标进行执行。
* --周期执行任务
* --串行执行,若之前任务出现异常则周期任务停止
* --好像是使用junit测试环境是不好使
*/
public class TestTimer extends TimerTask{
public void run() {
//线程延迟
/* Thread thread = new Thread();
try {
thread.sleep(10000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}*/
System.out.println("Timer Begin。。。!!!");
//异常抛出
//throw new RuntimeException();
}
public static void main(String[] args) {
Timer timer = new Timer();
timer.schedule(new TestTimer(), 3000, 5000);
}
<p>}</p>
spring Quartz:实现周期Job和定时Job
实现:TestQuartz.class + spring-quartz.xml + web.xml
TestQuartz.class:
/**
*Spring Quartz:
* --SimpleTrigger:周期执行任务
* --配置方式:
* --:首先实现类必须继承QuartzJobBean,并且实现其方法,executeInternal()方法自动执行方法
* --:在spring.xml配置文件中:
* --首先配置JobDetailBean的Bean为Job明细Bean
* --并且填写其中参数<property name="jobClass" value="目标类"/>
* --配置SimpleTriggerBean实现周期触发器任务
* --实现参数:<property name="jobDetail" ref="配置的明细Bean"/>
* <properby name="startDelay" value="启动延迟时间。。(ms)"/>
* <properby name="repeatInterval" value="周期时间。。(ms)"/>
*
* --配置SchedulerFactoryBean,作为Job工厂Bean,批量调度任务
* --实现参数<property name="triggers"><list><ref bean="欲执行的Trigger"></ref></list>< /property>
* --CronTrigger:周期执行任务
* --配置方式:与SimpleTrigger1,3部相同,在配置触发器时参数为:
* <property name="jobDetail" re