异步调用通常是指异步调用service。
1.启动类开启异步调用:@EnableAsync
2.controller层代码(无特殊处理):
@RequestMapping("/asyn")
public String asyn() {
System.out.println("controller 1");
userService.asyn();
System.out.println("controller 2");
return "ok";
}
3. service层中需要异步调用的方法加@Async注解
@Async
public void asyn() {
System.out.println("service 01");
for(int i = 0; i < 4; i++) {
System.out.println("[service i : ]" + i);
}
System.out.println("service 02");
}
调用后,结果如下:
controller 1
controller 2
service 01
[service i : ]0
[service i : ]1
[service i : ]2
[service i : ]3
service 02