【问题标题】:Spring batch integration with quartzSpring 与石英的批处理集成
【发布时间】:2011-12-26 10:09:23
【问题描述】:

如何按顺序运行三个 spring 批处理作业.. 我创建了三个批处理作业和一个 cron 触发器表达式。当第一个批处理作业成功完成时,我需要依次运行三个作业,然后是第二个批处理作业,然后是第三个批处理作业......

例如:第一个批处理作业将为第二个批处理作业提供输入,第二个批处理作业将为第三个批处理作业提供输入,然后第三个作业将对其进行处理...

【问题讨论】:

    标签: quartz-scheduler spring-batch


    【解决方案1】:

    对于顺序执行,请参阅§5.3.1 Sequential Flow

    <job id="job">
        <step id="stepA" parent="s1" next="stepB" />
        <step id="stepB" parent="s2" next="stepC"/>
        <step id="stepC" parent="s3" />
    </job>
    

    每个步骤的输出应该是文件或数据库记录。在这种情况下,Spring 批处理能够从中断(失败)步骤重新启动作业执行(另请参阅§5.1.4.2 Restarting a completed step)。通过ExecutionContext 可以进行跨步通信(请参阅StepExecutionStepExecutionListener

    如果您不想转储中间结果,则不需要顺序执行步骤:您只需将一个处理器的输出提供给另一个处理器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-13
      • 1970-01-01
      • 2020-12-15
      • 1970-01-01
      • 2019-12-01
      • 2022-12-05
      • 1970-01-01
      相关资源
      最近更新 更多