zoukankan      html  css  js  c++  java
  • springboot 定时任务schedule

    测试版本

    1.5 和 2.0.4 完全一样

    两步

    1. 配置类

    2.job

    1、配置类

    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.scheduling.annotation.EnableScheduling;
    import org.springframework.scheduling.annotation.SchedulingConfigurer;
    import org.springframework.scheduling.config.ScheduledTaskRegistrar;
    import java.util.concurrent.ExecutorService;
    import java.util.concurrent.Executors;
    
    @Configuration
    @EnableScheduling
    public class ScheduleConfig implements SchedulingConfigurer {
        
        @Override
        public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
            taskRegistrar.setScheduler(taskExecutor());
        }
    
        @Bean(destroyMethod="shutdown")
        public ExecutorService taskExecutor() {
            return Executors.newScheduledThreadPool(5);
        }
    }

    2. job

    package com.ly.job;
    
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.scheduling.annotation.Scheduled;
    import org.springframework.stereotype.Component;
    
    /**
     * 第一位,表示秒,取值0-59
     * 第二位,表示分,取值0-59
     * 第三位,表示小时,取值0-23
     * 第四位,日期天/日,取值1-31
     * 第五位,日期月份,取值1-12
     * 第六位,星期,取值1-7,1表示星期天,2表示星期一
     * 第七位,年份,可以留空,取值1970-2099
     */
    @Component
    public class HeartbeatJob {
        private static final Logger logger = LoggerFactory.getLogger(HeartbeatJob.class);
    
        /**
         * 检查状态1
         */
        @Scheduled(cron = "0 0 10,16 * * ?")
        public void checkState1() {
            logger.info(">>>1.5版本>> cron下午16上传检查开始....");
            logger.info(">>>1.5版本>> cron下午16上传检查结束....");
        }
    
        /**
         * 检查状态2
         */
        @Scheduled(cron = "0 0 18 * * ?")
        public void checkState2() {
            logger.info(">>>>> cron晚上18:00上传检查开始....");
            logger.info(">>>>> cron晚上18:00上传检查完成....");
        }
    
        /**
         * 检查状态3 5秒钟执行一次
         */
        //@Scheduled(cron = "0/5 * *  * * ? ")
        @Scheduled(cron = "0/5 * *  * * ?")
        public void checkState3() {
            logger.info(">>1.5版本>>>0/5 检查开始....");
        }
        
    
    }
  • 相关阅读:
    重构之重新组织函数(ExTract Method)
    设计模式之桥接模式
    设计模式原则之里氏替换原则
    设计模式原则之依赖倒置原则
    设计模式原则之接口隔离原则
    设计模式原则之单一职责原则
    编译php5.6
    wireshark总结
    Blu-Ray BRRip 和 BDRip 的区别
    openwrt虚拟机的network unreachable
  • 原文地址:https://www.cnblogs.com/lyon91/p/10103188.html
Copyright © 2011-2022 走看看