Spring Boot Schedule定时任务要点

 @Scheduled

  定时任务可以有很多写法,我觉得最简单的就是用注解的方式,如果你的项目用的是spring boot框架,就可以三步完成:

一,添加@EnableScheduling注解到入口类声明上面

/**
 * 启动
 *
 */
@SpringBootApplication
@EnableScheduling
public class Application {
    public static void main(String args[]) {
        SpringApplication.run(Application.class, args);
    }
}
二,创建类,添加@Component注解

@Component
public class Task {
 
}
三,创建方法,添加@Scheduled注解

@Scheduled(cron = "${task.cron.tradeData}")
public void getTradeData() {
 
}
(这里cron是从配置文件取值,如下)

task:
   cron:
     tradeData: 0 1 0 * * ?
看似简单,却隐藏着很多坑,一不小心就掉进去了,比如:

(1)此方法不能有参数

(2)此方法不能有返回值

(3)此类中不能包含其他带任何注解的方法(发现新大陆)

违反任何一条,定时都不会生效!

小心别入坑哦!!!!

--------------------- 
作者:王丽君CSDN 
来源:CSDN 
原文:https://blog.csdn.net/wlj323/article/details/80448291 
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/HappinessSourceL/article/details/84302312