软件编程
位置:首页>> 软件编程>> java编程>> Spring动态配置计时器触发时间的实例代码

Spring动态配置计时器触发时间的实例代码

作者:Hugiee  发布时间:2023-01-20 07:30:01 

标签:spring,计时器

Spring中添加计时器的时候根据业务需求可能会需要动态处理触发时间;


import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.Trigger;
import org.springframework.scheduling.TriggerContext;
import org.springframework.scheduling.annotation.EnableScheduling;
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;
@Component
@EnableScheduling
public class SchedulerTest implements SchedulingConfigurer {
 private final static Logger logger = LoggerFactory.getLogger(SchedulerTest.class);
 public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) {
   // 注册计时任务到Scheduling接口
   scheduledTaskRegistrar.addTriggerTask(new Runnable() {
     public void run() {
       logger.info("task job is running...");
     }
   }, new Trigger() {
     public Date nextExecutionTime(TriggerContext triggerContext) {
       CronTrigger cronTrigger = new CronTrigger("时间表达式");
       Date nextExec = cronTrigger.nextExecutionTime(triggerContext);
       return nextExec;
     }
   });
 }
}

PS:多个计时任务添加的时候只用都注册到Spring中即可

总结

以上所述是小编给大家介绍的Spring动态配置计时器触发时间的实例代码网站的支持!

来源:https://blog.csdn.net/u012680274/article/details/80591883

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com