spring轻量级定时任务框架
今天要完成一个定时执行的需求,稍微研究了一下,发现大多数人使用quaze,但是quaze配置有点麻烦,spring自带的task要简便而且轻量许多。
首先需要设置spring的task驱动,网上许多人是通过spring的配置文件添加这个配置来完成task的注解驱动,但是这种方式需要引入xml配置,不够优雅,可以通过@EnableScheduling注解来替代,在spring的配置类appconfig.java添加注解@EnableScheduling即可
![](https://img.haomeiwen.com/i2001535/4c57b29c402a741f.png)
然后编写一个job类,在该类的方法上添加@Scheduled注解即可,可以直接在该注解上添加cron配置任务的执行时间
![](https://img.haomeiwen.com/i2001535/9e3059672dccb0dd.png)
然后启动应用,这时候可能会发现tomcat报错了
![](https://img.haomeiwen.com/i2001535/2b71a4ec9b24e39c.png)
原因是spring的context中没有ScheduledExecutorService和SchedulingTaskExecutor两个bean,只需要在spring配置类appconfig.java中增加这两个bean即可
![](https://img.haomeiwen.com/i2001535/3df04c5ace94c9b3.png)
然后就可以正常执行定时任务了,是不是很简单呢?
网友评论