开启一些注解支持,配置一些文件即可进行异步处理任务以及定时、邮件任务。
异步任务:
1、创建一个service包
2、创建一个类AsyncService
一般会采用多线程的方式去处理这些任务。
编写方法,假设正在处理数据,使用线程设置一些延时,模拟同步等待的情况;
@Service
public class AsyncService {
public void hello(){
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("业务进行中....");
}
}
3、编写controller包
4、编写AsyncController类
我们去写一个Controller测试一下
@RestController
public class AsyncController {
@Autowired
AsyncService asyncService;
@GetMapping("/hello")
public String hello(){
asyncService.hello();
return "success";
}
}
5、访问http://localhost:8080/hello进行测试,3秒后出现success,这是同步等待的情况。
为使直接得到消息 在后台使用多线程的方式处理,手动编写多线程会很麻烦,给方法加上注解@Async。
@Async
public void hello(){
try {
Thread.sleep(3000