SpringBoot整合定时任务异步任务

【本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究。若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!】

1.定时任务

1.开启定时任务

@SpringBootApplication
//开启定时任务
@EnableScheduling
public class SpringBootDemoApplication{

    public static void main(String[] args) {
        SpringApplication.run(SpringBootDemoApplication.class, args);
    }
}

2.使用定时任务

@Component
public class TestTask {
    private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");

    //定义每三秒执行任务
//  @Scheduled(fixedRate=3000)
    @Scheduled(cron="4-10 * * * * ?")
    public void reportCurrentTime() {
        System.out.println(dateFormat.format(new Date()));
    }

}

2.异步任务

1.开启异步任务

@SpringBootApplication
//开启异步调用方法
@EnableAsync
public class SpringBootDemoApplication{

    public static void main(String[] args) {
        SpringApplication.run(SpringBootDemoApplication.class, args);
    }
}

2.定义异步任务

@Component
public class AsyncTask {

    @Async
    public Future<Boolean> dotask(){
        try {
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println("执行异步任务结束");
        return new AsyncResult<>(true);
    }

}

3.使用异步任务

@Autowired
private AsyncTask async;

async.dotask();

就是这么简洁不墨迹~~

版权声明

【本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究。若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!】

原文地址:https://www.cnblogs.com/onblog/p/13050354.html