首页 > 数据库技术 > 详细

SpringBoot配置定时任务(参数从数据库中读取)

时间:2020-05-15 15:46:09      阅读:524      评论:0      收藏:0      [点我收藏+]

一、新建配置类,配置TaskScheduler

@Configuration
public class ThreadAConfigurer  {

    
       @Bean("taskScheduler")
        public TaskScheduler taskScheduler() {
            ThreadPoolTaskScheduler taskScheduler = new ThreadPoolTaskScheduler();
            taskScheduler.setThreadNamePrefix("autoTask");
            taskScheduler.setPoolSize(10);
            return taskScheduler;
        }

}

二、配置定时任务

  由于Thread的内注入service为空,所以以参数形式传入到AutoSpThread类 ,taskRegistrar.addCronTask() 第二个参数配置定时启动任务的日期

@Component
@Configuration
public class AutoSpTask implements SchedulingConfigurer {

    @Autowired
    GlobalServiceConfig globalServiceConfig;

    @Autowired
    AutoSpService autoSpService;
    
    @Autowired
    TaskScheduler taskScheduler;
    

    private static final Logger LOG = LoggerFactory.getLogger(AutoSplitTask.class);

    @Override
    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
        taskRegistrar.setTaskScheduler(taskScheduler);
        String tPath = globalServiceConfig.getTiPath();
        String dateStr = DateUtils.formatDate(new Date());
        LOG.info("扫描定时任务");

        taskRegistrar.addCronTask(
                new AutoSpThread(autoSplitService, dateStr, tPath),
                globalServiceConfig.getAutoSTaskCron());
        

    }


}

 

SpringBoot配置定时任务(参数从数据库中读取)

原文:https://www.cnblogs.com/mylbs123/p/12894823.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!