实现quartz定时任务控制是否启动 (生产环境 和 开发环境)

实现quartz定时任务控制是否启动 (生产环境 和 开发环境)隔离配置

最近遇到一个生产环境的数据异常,一看日志,就发现原来我连接正式数据库进行复现bug 的时候,定时任务会单独运行,而且我的定时任务是给第三方系统推送数据。可想而知,问题的严重性。

哈哈,俺在这个项目就增加了定时任务是否启动的配置项

springboot2的项目

实现步骤(可CV)

1、增加quartz的配置类
bash 复制代码
import org.quartz.Scheduler;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.quartz.SchedulerFactoryBean;

@Configuration
public class QuartzConfig {

    @Value("${quartz.scheduler.enabled:true}")
    private boolean quartzEnabled;

    @Bean
    public SchedulerFactoryBean schedulerFactoryBean() {
        SchedulerFactoryBean schedulerFactoryBean = new SchedulerFactoryBean();
        schedulerFactoryBean.setAutoStartup(quartzEnabled);
        return schedulerFactoryBean;
    }

    @Bean
    public Scheduler scheduler(SchedulerFactoryBean schedulerFactoryBean) {
        return schedulerFactoryBean.getScheduler();
    }
}
2、在springboot的application-dev配置

dev

bash 复制代码
quartz:
  scheduler:
    enabled: false

prod

bash 复制代码
quartz:
  scheduler:
    enabled: true
重启项目,看效果

简单吧,好用的话评论区留言"好使"

相关推荐
天天摸鱼的java工程师23 分钟前
Java 解析 JSON 文件:八年老开发的实战总结(从业务到代码)
java·后端·面试
白仑色24 分钟前
Spring Boot 全局异常处理
java·spring boot·后端·全局异常处理·统一返回格式
喵手31 分钟前
反射机制:你真的了解它的“能力”吗?
java·后端·java ee
Monly2138 分钟前
RabbitMQ:SpringAMQP 入门案例
spring boot·rabbitmq·java-rabbitmq
Monly2141 分钟前
RabbitMQ:SpringAMQP Fanout Exchange(扇型交换机)
spring boot·rabbitmq·java-rabbitmq
kaika141 分钟前
告别复杂配置!使用 1Panel 运行环境功能轻松搭建 Java 应用
java·1panel·建站·halo
每天学习一丢丢1 小时前
Spring Boot + Vue 项目用宝塔面板部署指南
vue.js·spring boot·后端
有梦想的攻城狮1 小时前
Java 11中的Collections类详解
java·windows·python·java11·collections
六千江山1 小时前
从字符串中提取符合规则的汽车车牌
java
33255_40857_280591 小时前
从韩立结婴看Java进阶:一个10年老码农的修仙式成长指南
java