springboot与任务(异步任务)
描述:在Java应用中,绝大多数情况下都是通过同步的方式来实现交互处理的;但是在处理与第三方系统交互的时候,容易造成响应迟缓的情况,之前大部分都是使用多线程来完成此类任务,其实,在Spring 3.x之后,就已经内置了@Async来完美解决这个问题。
实现方法:
两个注解:
@EnableAysnc、@Aysnc
写法:
主类: @EnableAsync//开启异步注解 @SpringBootApplication public class Springboot04TaskApplication { public static void main(String[] args) { SpringApplication.run(Springboot04TaskApplication.class, args); } }
service:
@Service
public class AsyncService {
//告诉spring这是一个异步方法
@Async
public void hello(){
try {
java.lang.Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("处理数据中........");
}
}