• spring batch中控制step的走向


    1、顺序执行step:

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

    2、分支执行:

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

    当用xml配置文件的时候,on属性可以使用通配符来表达step的返回状态。目前,只支持两种符号:*和?。

    • "*" 匹配0个或者多个字符

    • "?" 只能匹配1个字符

    比如, "c*t"匹配"cat"和"count",但是"c?t"只能匹配"cat",不能匹配 "count"。

    3、BatchStatus VS ExitStatus

    1)BatchStatus是一个enum类型,包括:

    COMPLETED, STARTING, STARTED, STOPPING, STOPPED, FAILED, ABANDONED, UNKNOWN

    而ExitStatus是一个普通类,可以是任意返回值,主要有以下几个:

    UNKNOWN,EXECUTING,COMPLETED,NOOP,FAILED,STOPPED

    2)当用xml配置文件的时候,next元素表示的是ExitStatus

    3)当用java代码的时候,on方法表示的还是ExitStatus

  • 相关阅读:
    【案例】ora600
    Oracle 10046 event
    Oracle redo与undo浅析
    BUFFER CACHE和SHARED POOL原理
    oracle体系结构基础
    Oracle-buffer cache、shared pool
    获取oracle数据库对象定义
    ORA-20011
    expdp/impdp中NETWORK_LINK参数使用
    day03-Python基础
  • 原文地址:https://www.cnblogs.com/nizuimeiabc1/p/9669973.html
Copyright © 2020-2023  润新知