spring版本及quartz的maven引入
<properties>
<springframework.version>4.0.6.RELEASE</springframework.version>
<quartz.version>1.8.3</quartz.version>
</properties>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${springframework.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>${quartz.version}</version>
</dependency>
配置类定义
@Configuration
public class AppConfig {
@Bean
public MethodInvokingJobDetailFactoryBean methodInvokingJobDetailFactoryBean() {
MethodInvokingJobDetailFactoryBean factoryBean = new MethodInvokingJobDetailFactoryBean();
factoryBean.setTargetBeanName("customService"); //执行定时任务的bean在spring IOC中的id值
factoryBean.setTargetMethod("doJob"); //执行定时任务bean中的具体方法名
return factoryBean;
}
@Bean
public CronTriggerBean conTriggerBean() {
CronTriggerBean triggerBean = new CronTriggerBean();
triggerBean.setJobDetail(this.methodInvokingJobDetailFactoryBean().getObject());
try {
triggerBean.setCronExpression("0/10 * * * * ?");
} catch (ParseException e) {
e.printStackTrace();
}
return triggerBean;
}
@Bean
public SchedulerFactoryBean schedulerFactoryBean() {
SchedulerFactoryBean factoryBean = new SchedulerFactoryBean();
factoryBean.setTriggers(this.conTriggerBean());
return factoryBean;
}
}