weixin_42300515 2009-03-05 20:19
浏览 313
已采纳

关于java的监听问题(不是servlet的监听):如何监听一个方法已经执行完成?

起因:项目用j2ee做,业务数据量很大,后台将查询出的数据拼成excel(此过程很耗时间),将excel打zip包传给前台。

用户执行了查询操作,但是这个操作要40分钟后才能执行完毕,并且用户不希望一直在页面前等待,而且有可能关闭浏览器,所以用户再次打开浏览器时无法知道上次操作是否完成,所以我想:

写一个监听类,来监听我 “查询方法” ,用户再次执行查询方法后,我的监听类会根据“后台将查询出的数据拼成excel(此过程很耗时间)”是否完成,来返回给用户一个说明信息,让用户大致知道自己执行操作的进度。

项目用的是struts1.2,本来我想在我的查询类里面添加一个公共静态变量,然后查询方法执行的结尾来改变这个静态变量的值,之后我有一个线程来监视这个变量,一旦这个变量的值改变,则说明我的查询方法执行结束了,可是对于struts1.2来说,当然,我很多高级功能都还不会用,struts1.2的页面每出发一个request请求到后台的action时好像就要 new Action ,也就是说,Action 里面的 查询 方法可能又被再一次执行了。

希望大家给个提示。
非常感谢。

  • 写回答

1条回答 默认 最新

  • iteye_4277 2009-03-06 13:17
    关注

    就算你new Action
    你的类静态变量也不会受其影响

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?