Java web应用程序中由用户启动的后台进程

Java web应用程序中由用户启动的后台进程,java,spring,tomcat,multithreading,background,Java,Spring,Tomcat,Multithreading,Background,我在Tomcat上使用Spring编写了一个java web应用程序 我需要一种方法,让用户在服务器中启动后台进程,并在不等待后台进程完成的情况下向用户返回响应 后台进程用java编程,并与我的应用程序集成 因为我使用的是tomcat JMS,所以它不是一个选项。为了便于移植,我宁愿不必定制我的tomcat安装 我可以使用石英或类似的,并定期检查该过程是否应该运行,但我更喜欢立即启动的东西 我已经尝试生成一个新线程,但它不知道我的SpringBean 最好的办法是什么 谢谢 Max这听起来是典型

我在Tomcat上使用Spring编写了一个java web应用程序

我需要一种方法,让用户在服务器中启动后台进程,并在不等待后台进程完成的情况下向用户返回响应

后台进程用java编程,并与我的应用程序集成

因为我使用的是tomcat JMS,所以它不是一个选项。为了便于移植,我宁愿不必定制我的tomcat安装

我可以使用石英或类似的,并定期检查该过程是否应该运行,但我更喜欢立即启动的东西

我已经尝试生成一个新线程,但它不知道我的SpringBean

最好的办法是什么

谢谢


Max

这听起来是典型的Ajax请求。:-)


您的浏览器不会等待结果…

您可以启动一个普通的旧Java线程。

Spring为这类事情提供了抽象,它附带了十几种不同的实现供您选择(
ThreadPoolTaskExecutor
可能就是您想要的)。正确使用它取决于您,这样任务在运行时就可以访问Spring上下文。

我想原因是,“使用线程的独立Java应用程序可以很容易地做到这一点,但在J2EE中不能使用线程。”——。