spring通过任务执行器(TaskExecutor)来实现多线程和并发编程。可使用@EnableAsync开启对异步任务的支持,并通过在实际执行Bean的方法中使用@Async注解来声明一个异步任务。
@Component
@EnableAsync//开启对异步任务的支持
public class AsyncUpdate {
@Async//声明此方法是一个异步方法
public void updateAsync() throws Exception {
int num = 0;
System.out.println("异步更新操作:" + (num+1));
}
@Async//声明此方法是一个异步方法
public void selectAsync() throws Exception {
int num = 100;
System.out.println("异步查询操作:" + (num+1));
}
}
以上代码是编写一个异步的方法,使用@Component注解声明这个是一个配置类,在spring容器启动时需要被加载。
启动之后会发现两个异步方法并发执行,而不是顺序执行。