Bootstrap

@Async注解

1.spring boot 项目使用时需要在启动类开启异步方式,增加 @EnableAsync 注解

@EnableAsync
@SpringBootApplication
public class ServiceApplication {
//
}

2.在方法上加上@Async注解

被async注解的方法返回值只能是void或者使用Future包装一下,比如返回值Future()3

@Async
public Future<List<AccountDTO>> asyncBatchGetAccount() {
//
}

3.@Async调用中的事务处理机制 

1)在@Async标注的方法,在其调用数据库操作之时,将无法产生事务管理的控制,原因就在于其是基于异步处理的操作。

2)那该如何给这些操作添加事务管理呢?可以将需要事务管理操作的方法放置到异步方法内部,在内部被调用的方法上添加@Transactional

;