Spring Boot 动态定时任务:实现与应用详解
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Component
public class DynamicScheduledTask {
private boolean enableTask = false; // 定义一个开关变量来控制任务是否执行
// 使用@Scheduled注解来创建定时任务
@Scheduled(fixedRateString = "${task.fixedRate}") // 从配置文件中读取定时频率
public void executeTask() {
if (enableTask) {
// 定时任务的执行逻辑
System.out.println("执行定时任务...");
}
}
// 根据需要动态开启或关闭定时任务
public void setEnableTask(boolean enableTask) {
this.enableTask = enableTask;
}
}
这段代码定义了一个简单的Spring Boot定时任务,任务的执行由enableTask
变量控制。通过setEnableTask
方法可以在运行时动态地启动或停止任务。@Scheduled
注解使用fixedRateString
属性从配置文件中读取定时频率,这样可以在不修改代码的情况下改变定时任务的执行频率。
评论已关闭