对于SpringBoot的定时器使用相当简单
只需在启动类上加入注解@EnableScheduling
1.静态定时器
@Componentpublic class ScheduledDemo{ //@Scheduled(cron = "0 0 0 * * ?")//每天凌晨执行一次 @Scheduled(cron="0/10 * * * * ?")//每10秒执行一次 public void timmer(){ //写自己的业务逻辑System.out.println("定时任务"); }}OK简单好用
2.动态定时器
import org.springframework.scheduling.Trigger;import org.springframework.scheduling.TriggerContext;import org.springframework.scheduling.annotation.SchedulingConfigurer;import org.springframework.scheduling.config.ScheduledTaskRegistrar;import org.springframework.scheduling.support.CronTrigger;import org.springframework.stereotype.Component;import java.util.Date;@Componentpublic class TimeTrak implements SchedulingConfigurer { private String cron = "0/03 * * * * ?"; @Override public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { taskRegistrar.addTriggerTask(new Runnable() { @Override public void run() { //自己的业务逻辑 System.out.println("定时执行"); } },new Trigger(){ @Override public Date nextExecutionTime(TriggerContext triggerContext) { return new CronTrigger(cron).nextExecutionTime(triggerContext); } }); } public void setCron(String cron) { this.cron = cron; }}搞定