Spring对任务调度框架Quartz做了很好的封装,开发人员基本上只要实现具体的JOB类即可,且JOB类可以是POJO。其他的均可以声明配置。
<!-- 任务 --> <bean id="helloWorldJob" class="com.test.job.HelloWorldJob"> </bean> <!-- 任务触发器 --> <bean id="helloWorldTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"> <property name="jobDetail"> <bean class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject" ref="helloWorldJob"></property> <property name="targetMethod" value="say"></property> </bean> </property> <property name="cronExpression" value="0 0/1 * * * ?"></property> </bean> <!-- 任务调度器 --> <bean id="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="helloWorldTrigger"/> </list> </property> </bean>
JOB类实现如下:
public class HelloWorldJob{ public void say(){ System.out.println("hello world"); } }
上面的就实现了每分钟执行下JOB.