--待完善
有時我們希望異步地調用一個方法,也就是調用這個方法的時候期望它立即返回。通常這樣做有以下3種情景:
- 我們不關心方法的返回值
- 方法的返回值為void
- 通過Future對象異步地獲得返回值
我們可以新創建一個線程,在其run方法里調用這個方法,然而,如果使用了Spring框架的話,可以使用其注解來屏蔽復雜的線程細節,而簡單地將方法變為可異步調用的方法。
首先,方法所屬的類的對象需要是被Spring容器所管理的,也就是指被@Controller @Service @Repository @Component這些注解的類。
其次,需要在Spring的配置文件中打開task注解驅動:
<task:annotation-driven />
然后,在被異步調用的方法上面加上@Async注解,表明這個方法可以被異步地調用。
最后,在調用方法所在的類上面加上@EnableAsync注解,在該類中調用@Async的方法使用異步的方式。