写个简单实现:

private static Map> futures = new HashMap<>();

@RequestMapping(value = "ehr", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON)

@ResponseBody

public User getUser(HttpServletRequest request, HttpServletResponse response) {

String sessionID = request.getSession().getId();

User u = new User();

u.setMsg("未完成");

if(futures.containsKey(sessionID)) {

Future userFuture = futures.get(sessionID);

if(userFuture.isDone()) {

try {

u = userFuture.get();

} catch (InterruptedException | ExecutionException e) {

e.printStackTrace();

}

futures.remove(sessionID);

}

} else {

Future future = poolTaskExecutor.submit(ehrDownloadTask);

futures.put(sessionID,future);

}

return u;

}

前台轮训直到正确返回。

Key你可以用我这样的SessionID,也可以自己根据逻辑生成

如果是分布式Tomcat可以用Redis代替HashMap

java耗时任务有哪些,java后台耗时任务多线程返回结果相关推荐

  1. 阿里P8资深架构师耗时一年整理Java工程师成神之路

    1.基础篇 01:面向对象 → 什么是面向对象 面向对象.面向过程 面向对象的三大基本特征和五大基本原则 → 平台无关性 Java 如何实现的平台无关 JVM 还支持哪些语言(Kotlin.Groov ...

  2. 【java】 linux下利用nohup后台运行jar文件包程序

    Linux 运行jar包命令如下: 方式一: java -jar XXX.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? 方式二 ...

  3. java cms bootstrap_thinkcms: Java CMS系统,完善的后台功能,大气的前台页面. 使用springMVC,hibernate,bootstrap,amazeui....

    #thinkcms Java CMS系统,完善的后台功能,大气的前台页面 主要技术 springmvc-mvc控制层 shiro-方便全面的安全控制框架 hibernate-orm框架 ehcache ...

  4. Linux后台运行java的jar包,java基础面试笔试题

    我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家. 扫描二维码或搜索下图红色VX号,加VX好友,拉你进[程序员面试学习交流群]免费领取.也欢迎各位一起 ...

  5. Java生鲜电商平台-商城后台架构与原型图实战

    Java生鲜电商平台-商城后台架构与原型图实战 说明:生鲜电商平台的运营平台,其中需要很多的功能进行管理.目前把架构与原型图实战分享给大家,希望对大家有用. 仪表盘/首页,简单统计,报表页,运营快捷口 ...

  6. java计算机毕业设计Web网上购书后台管理系统(附源码、数据库)

    java计算机毕业设计Web网上购书后台管理系统(附源码.数据库) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Ecl ...

  7. 阿里云基础设施事业部Java岗、腾讯TEG后台开发岗面经(4.22更新,拿到AT双Offer)

    阿里云基础设施事业部Java岗.腾讯TEG后台开发岗面经

  8. java微信二维码第三方后台登陆实现 ( 一 )

    一.先加入需要的配置文件和依赖以及用到的工具类 1.在application.yml中加入配置文件 wx:open:# 微信开放平台 appidapp_id: wxed9954c01bb89b47# ...

  9. 基于JAVA体育城场地预定系统后台计算机毕业设计源码+数据库+lw文档+系统+部署

    基于JAVA体育城场地预定系统后台计算机毕业设计源码+数据库+lw文档+系统+部署 基于JAVA体育城场地预定系统后台计算机毕业设计源码+数据库+lw文档+系统+部署 本源码技术栈: 项目架构:B/S ...

  10. 计算机毕业设计Java学习自律养成小程序后台(源码+系统+mysql数据库+lw文档)

    计算机毕业设计Java学习自律养成小程序后台(源码+系统+mysql数据库+lw文档) 计算机毕业设计Java学习自律养成小程序后台(源码+系统+mysql数据库+lw文档) 本源码技术栈: 项目架构 ...

最新文章

  1. 最新Java中Date类型详解
  2. Meterpreter Guide
  3. Mybatis报错ClassNotfind
  4. linux shell之控制台打印各种颜色字体和背景
  5. 【渝粤题库】国家开放大学2021春3608矿井水害防治题目
  6. schoolcms - 学习笔记
  7. 第一章 数据挖掘基础
  8. C语言排序名单(字典)
  9. DP-最大递增子序列与最大递增子数组; 最大公共子序列与最大公共子数组。
  10. 【SpringMVC学习05】SpringMVC中的参数绑定总结——较乱后期准备加入 同一篇幅他人的参数绑定...
  11. linux shell将字符串分割数组
  12. while循环 dowhile循环 for循环(C++)
  13. SilverLight:”无法启动调试--未安装 Silverlight Developer 运行时。请安装一个匹配版本”的解决方案。
  14. 验票系统认证服务器地址,北京增值税发票勾选认证(选择确认)平台入口
  15. JavaScript基础-前端开发
  16. 高通modem命名及对应芯片
  17. 淘宝 生成 图片二维码分享
  18. vue电商后台管理系统--订单管理篇
  19. 联想计算机的控制面板在哪,Win10创意者的控制面板在哪?
  20. WINDOWS 2003设置攻略

热门文章

  1. pentaho中Invalid byte 3 of 3-byte UTF-8 sequence的解决方法
  2. 静态代码分析——字符串
  3. day1 作业编写登录窗口
  4. cacti忘记密码怎么办
  5. expdp备份速度慢的问题
  6. Flex/Flash Builder里实用但被忽略的编译参数
  7. 12款很棒的浏览器兼容性测试工具
  8. eclipse自定义快捷键
  9. Servlet的Cookie值保存与获取
  10. linux shell declare命令 声明shell变量 显示shell函数