春季批处理-数据库到多个文件作业

| 我正在尝试在Spring批处理中实现面向块的步骤,该步骤从数据库中检索记录并将每个块写入单独的文件中,例如,假设数据库中有500条记录。我需要创建10个文件(每个文件有50条记录)的工作。 PS:主要目的是同时创建输出文件。由于ItemWriter实现不是线程安全的,因此我决定创建单独的文件作为输出,以便减少在完成该步骤上花费的总时间。 没有人知道如何使用Spring Batch实施它吗?我找到了一个示例项目,该项目使用分区并行处理多个文件,但这并不是我想要的。就我而言,输入是单个表,而输出是多个文件。  这里是链接:FileParallelProcessing     
已邀请:
我找到了答案, 春季批处理样本中的partitionJdbcJob完全符合我的要求 Spring Batch Sample Job Source可以在这里找到     
我建议您编写一个服务,该服务的作用是将您的块写入文件中。 该服务将接受一个输入:单个块。 逻辑是将其写入文件中。 您将编写用于在此服务中编写的多线程内容。 您的批处理将以多线程方式将块发送到该服务。 因此,您可以通过Spring Batch获得多线程的好处,并通过编写自己的服务来保留潜在错误的控制,该服务将把您的块输出到文件中。 使用ItemWriterAdapter将写作内容委派给您的服务。     

要回复问题请先登录注册