方法非常简单,我们只需要在@Async注解中指定线程池名即可
@Service
public class GitHubLookupService {
private static final Logger logger =LoggerFactory.getLogger(GitHubLookupService.class);
@Autowired
private RestTemplate restTemplate;
// 这里进行标注为异步任务,在执行此方法的时候,会单独开启线程来执行(并指定线程池的名字)
@Async("taskExecutor")
public CompletableFuture<String> findUser(String user) throws InterruptedException {
logger.info("Looking up " + user);
String url = String.format("https://api.github.com/users/%s", user);
String results = restTemplate.getForObject(url, String.class);
Thread.sleep(3000L);
return CompletableFuture.completedFuture(results);
}
}
springboot接口开发线程异步处理
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 一、简介 在Spring-Boot项目开发中,存在着本模块的代码需要访问外面模块接口,或外部url链接的需求,针对...
- CompletableFuture是java8提供更加完备的函数式异步工具。其继承了Future和Completi...
- 在现代软件开发中,系统功能越来越复杂,管理复杂度的方法就是分而治之,系统的很多功能可能会被切分为小的服务,对外提供...
- CloudJavaBackendSummaries1、开发环境eclipse工程,引入jw仓库的jw-base,3...