Springboot整合Quartz实现定时任务
pom依赖引入
< dependency>
< groupId> org.springframework.boot</ groupId>
< artifactId> spring-boot-starter-quartz</ artifactId>
</ dependency>
继承QuartzJobBean实现executeInternal
public class WeatherDataSync extends QuartzJobBean {
private static final Logger logger = LoggerFactory. getLogger ( WeatherDataSync. class ) ;
@Override
protected void executeInternal ( JobExecutionContext jobExecutionContext) throws JobExecutionException {
logger. info ( "WeatherDataSync" ) ;
}
}
Configuration
@Configuration
public class QuartzConfiguration {
@Bean
public JobDetail weatherDataSyncDetailJob ( ) {
return JobBuilder. newJob ( WeatherDataSync. class ) . withIdentity ( "weatherDataSyncDetailJob" ) . storeDurably ( ) . build ( ) ;
}
@Bean
public Trigger weatherDataSyncTrigger ( ) {
SimpleScheduleBuilder scheduleBuilder = SimpleScheduleBuilder. simpleSchedule ( ) . withIntervalInSeconds ( 20 ) . repeatForever ( ) ;
return TriggerBuilder. newTrigger ( ) . forJob ( "weatherDataSyncDetailJob" ) . withIdentity ( "WeatherDataSyncTrigger" ) . withSchedule ( scheduleBuilder) . build ( ) ;
}
}