弹簧启动控制器中的多线程

时间:2017-04-19 21:12:12

标签: java multithreading postgresql spring-boot callable

以下是我的一个spring控制器中的代码。在这里我需要使用多线程在postgres数据库中存储一些数据,所以我不要等到它将数据保存到数据库中,我可以将响应发送回被调用API。我怎么能实现这个目标?

//billingLogService.saveBillingLogDetails(Object);
if (!Util.isNull(personId) && !Util.isNull(personConnectionData)) {
    return new Callable<Map<Long, PersonConnectionTo>>() {
        @Override
        public Map<Long, PersonConnectionTo> call() throws Exception {
            Map<Long, PersonConnectionTo> connectionTextMap =
                profileService.getconnectionTextForFocusCompany(focusCompanyId, personId, personConnectionData);
            return connectionTextMap;
        }
    };
}

1 个答案:

答案 0 :(得分:2)

其中一种方法是将整个逻辑(您希望在单独的线程中运行)放入某个服务类的方法中。
然后
 1.使用@Service或等效的注释类  2.使用@Async注释方法  3.使用@EnableAsync
 这应该足够了