Quartz有许多种配置,最简单易懂的才是值得大家提倡的,最标准的就是建立调度数据库来管理调度任务,但是对于一些小的调度程序而言就没有必要了,所谓权衡是也。找到一个最佳方式而不是为了规范而规范,增加不必要的工作量没有必要。
1、编写执行任务代码
public class ExBbsInfoJob{
public void execute(){
//doSomething......
}
}
2、quartz的applicationContext.xml配置
<!-- Spring集成Quartz开始 -->
<!-- 要调用的工作类 -->
<!-- 获取外部BBS数据信息 -->
<bean id="ebij" class="com.kvt.lbs.sns.service.ExBbsInfoJob"></bean>
<!-- 定义调用对象和调用对象的方法 -->
<bean id="ebijTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject"><ref bean="ebij" /></property>
<property name="targetMethod"><value>execute</value></property>
</bean>
<!-- 定义触发时间 -->
<bean id="ebijTime" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail"> <ref bean="ebijTask"/> </property>
<property name="cronExpression"> <value>0 0 8,13 * * ?</value> </property>
</bean>
<!-- 管理触发器 -->
<bean id="startQuertz" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref local="ebijTime"/>
</list>
</property>
</bean>
<!-- Spring集成Quartz结束 -->