我在Tomcat上使用Spring连接了一个java Web应用程序。
我需要一种方法让用户在服务器中启动后台进程并向用户返回响应,而无需等待后台进程完成。
后台进程在java中编程并与我的应用程序集成。
因为我使用的是tomcat JMS不是一个选项。为了便于携带,我宁愿不必自定义我的tomcat安装。
我可以使用Quartz或类似的,并定期检查该过程是否应该运行,但我更喜欢立即启动的东西。
我尝试生成一个新线程,但它不知道我的Spring bean。
最好的方法是什么?
由于
最高
答案 0 :(得分:5)
Spring为这类东西提供了TaskExecutor抽象,它有十几个不同的实现供您选择(ThreadPoolTaskExecutor
可能就是你想要的)。您可以正确使用它,以便任务在运行时可以访问Spring上下文。
答案 1 :(得分:0)
对于 Ajax 请求来说,这听起来很典型。 : - )
您的浏览器不会等待结果......
答案 2 :(得分:-2)
你可以发一个普通的旧Java线程。