三、SpringBoot2.x异步任务实战(核心知识)
简介:讲解什么是异步任务,和使用SpringBoot2.x开发异步任务实战
一、什么是异步任务和使用场景:适用于处理log、发送邮件、短信……等
下单接口->查库存 100
余额校验 150
风控用户100
....
二、启动类里面使用@EnableAsync注解开启功能,自动扫描
三、定义异步任务类并使用@Component标记组件被容器扫描,异步方法加上@Async
注意点:
1)要把异步任务封装到类里面,不能直接写到Controller
2)增长Future<String> 返回结果 AsyncResult<String>("task执行完成");
3)若是须要拿到结果 须要判断所有的 task.isDone()
四、经过注入方式,注入到controller里面,若是测试先后区别则改成同步则把Async注释掉spring
springboot整合异步任务
建立异步任务的类
建立三个任务
把方法标记为异步任务。使用@Async注解
能够标记在方法和类上面
在类上也标记为异步类
测试
springboot
用future拿到结果。判断异步的执行是否完成。
异步
把这个类的注解不用了。就是个同步的类
测试