Quartz jar包是 : quartz-all-1.8.4.jar
spring-quartz.xml:
<!-- 自动扫描quartz包下的所有类,使其解释为定时任务类 -->
<context:component-scan base-package="com.zch168.quartz" />
<bean id="jobDetail"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="testQuartz" />
<property name="targetMethod" value="execute" />
<!-- 禁止并发执行 -->
<property name="concurrent" value="false" />
</bean>
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="jobDetail" />
<!-- 每隔1分钟触发一次 -->
<property name="cronExpression" value="0 0/1 * * * ?" />
</bean>
<bean id="schedulerFactory"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="cronTrigger" />
</list>
</property>
</bean>
TestQuartz.java
@Component
public class TestQuartz extends QuartzJobBean{
public void execute(){
System.out.println("TestQuartz被执行!");
}
@Override
protected void executeInternal(JobExecutionContext arg0)
throws JobExecutionException {
// TODO Auto-generated method stub
}
}
是使用的 自动扫描quartz包下的所有类,使其解释为定时任务类
<context:component-scan base-package="com.zch168.quartz" />
所以不要忘了 TestQuartz 类 的注解。