首页 > 解决方案 > 将数据发送到 Spring Batch Item Reader(或 Tasklet)

问题描述

我有以下要求:

  1. 一个端点 http://localhost:8080/myapp/jobExecution/myJobName/execute 接收 CSV 并使用单一性来应用一些验证并生成一些 pojo 的列表。
  2. 将该列表发送到 Spring Batch Job 进行一些处理。
  3. 多个用户可以这样做。

我想知道使用 Spring Batch 是否可以实现这一目标?

我正在考虑使用队列,放置数据并执行从该队列中提取对象的作业。但是我怎么能确定如果其他人执行端点并且其他 Job 正在执行,Spring Batch 知道哪个 Item 属于某个执行?

标签: spring-bootspring-batchspring-batch-tasklet

解决方案


是的。Spring boot 将在不同的线程中执行这些作业。所以 Spring 知道哪些项目属于哪个执行。注意:您可以使用类似记录相关 ID。这将帮助您过滤特定请求的日志。https://dzone.com/articles/correlation-id-for-logging-in-microservices


推荐阅读