springboot 定时任务
2017-04-30 23:32
260 查看
springboot 定时任务
springboot 有自己简单的定时调度,简单到令人发指@EnableScheduling @Configuration public class TestQuartz { protected final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger(this.getClass()); @Scheduled(cron = "0/20 * * * * ?") public void testQuartz() { logger.info("test quartz *************"); } }
2.springboot集成quartz
添加maven依赖
<dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.2.1</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> </dependency>
创建一个quartz listener
@Configuration public class SchedulerListener implements ApplicationListener<ContextRefreshedEvent> { @Autowired public SmaugScheduler smaugScheduler; @Override public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) { try { smaugScheduler.schedulerJobs(); } catch (Exception e) { } } @Bean public SchedulerFactoryBean schedulerFactoryBean() { return new SchedulerFactoryBean(); } }
SmaugScheduler
@ComponentScan @Configuration public class SmaugScheduler { @Autowired public SchedulerFactoryBean schedulerFactoryBean; public void schedulerJobs() throws SchedulerException { Scheduler scheduler = schedulerFactoryBean.getScheduler(); startTestJob(scheduler); } private void startTestJob(Scheduler scheduler) throws SchedulerException { JobDetail jobDetail = JobBuilder.newJob(SmaguScheduJob.class).withIdentity("job1", "group1").build(); CronScheduleBuilder cronScheduleBuilder = CronScheduleBuilder.cronSchedule("0/5 * * * * ?"); CronTrigger cronTrigger = TriggerBuilder.newTrigger().withIdentity("trigger1", "group1").withSchedule(cronScheduleBuilder).build(); scheduler.scheduleJob(jobDetail, cronTrigger); } }
public class SmaguScheduJob implements Job { protected final Logger logger = LoggerFactory.getLogger(this.getClass()); @Override public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException { logger.info("job => qwe"); } }
启动即可
相关文章推荐
- spring boot环境下使用quartz设置定时任务
- Spring Boot 定时任务的使用
- spring boot 定时任务
- springboot定时任务
- 【SpringBoot】——创建定时任务
- SpringBoot原生定时任务解析
- SpringBoot 定时任务遇到的坑
- 基于Spring Boot 实现定时任务
- Spring Boot:在Spring Boot中使用定时任务
- (14)Spring Boot定时任务的使用【从零开始学Spring Boot】
- Spring Boot:在Spring Boot中使用定时任务
- spring boot调用spring自带定时任务
- Springboot 之 使用Scheduled做定时任务
- 14. Spring Boot定时任务的使用【从零开始学Spring Boot】
- Spring Boot使用方法小札(2):执行定时任务
- Spring Boot:在Spring Boot中使用定时任务
- spring-boot之简单定时任务
- spring boot创建定时任务
- 【springboot】 springboot集成quartz实现定时任务
- 在Spring Boot中使用@Scheduled实现定时任务