我做了这个 spring 批处理项目(csv 到数据库,经典) - 工作正常:https : //github.com/Tyvain/Spring-Batch-Generic-Bulk在一个单独的项目中,我使用 vaadin 制作了一个应用程序,我可以在其中上传文件工作正常:https : //github.com/Tyvain/vaadin-simple-upload-file-> 我们需要在上传文件时触发作业。所以我将这两个项目重新组合成一个应用程序,步骤如下:禁用批处理:job.enabled:false(在 application.yml 中)将所需的 vaadin 库添加到 pom添加视图 (MainView.java)。此修改的来源:https : //github.com/Tyvain/Spring-Batch-Generic-Bulk/tree/include-vaadin-upload-page在这一点上,我仍然不确定如何启动作业,但我面临另一个问题:当我启动应用程序时,它停止了。停留在 vaadin 应用程序中的服务器不会停留在此处。编辑:当我从我的作业配置中删除这些注释时,服务器保持运行://@Configuration//@EnableBatchProcessing1/ 是否可以在启用 spring-batch 的情况下保持我的服务器运行?2/ 这是一种错误的做法吗?解决方案工作:https : //github.com/Tyvain/ProcessUploadedFile-Vaadin_SpringBatch
2 回答
慕田峪9158850
TA贡献1794条经验 获得超7个赞
如果您想在上传后立即处理上传的文件,则 spring-batch 不是正确的方法。我建议在使用@Async 和 CompletableFuture 上传后在后台线程中处理它,在此处查看更多信息:Spring @Async with CompletableFuture
添加回答
举报
0/150
提交
取消