paulwong

          SPRING BATCH 運行機制

          JOB的XML配置相當于命令模式中的一個命令,每次運行,會生成一個JOB INSTANCE,同時也會生成一個JOB EXCETION,JOB INSTANCE表示有一個JOB,JOB EXECUTION表示進行第一次嘗試。失敗運行的JOB再次運行時,只生成一個JOB EXCETION,表示進行的第二次嘗試。當SPRING BATCH JOB引擎接到運行請求時,有以下幾種情況:@import url(http://www.aygfsteel.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);

          1. 判斷此JOB以前是否有運行過,判斷依據:根據JOB NAME和JOB PARAMETERS信息去這兩張表查找,如找到記錄,則是有運行過,如確定有則引擎退出并提示。


          2. 判斷是否有重復運行的JOB,如果沒,查找此JOB上次運行的情況,如果有FAIL的情況,則重新從上次失敗的地方運行繼續運行,判斷根據:根據JOB INSTANCE關聯的JOB EXECUTION查找是否有狀態為FAIL的記錄,如有則是,就新建一個JOB EXECUTION表示進行第二次嘗試,同時又生成關于新JOB的JOB EXECUTION。上次的JOB運行完后,再運行此次新JOB。判斷上次失敗的STEP的依據:查找對應的JOB EXECUTON的STEP EXECUTON狀態為FAIL的STEP即可,會從此步驟開始運行,而不是從第一步開始運行。

          參考文檔:
          http://static.springsource.org/spring-batch/reference/html/domain.html#domainJobInstance

          posted on 2012-10-20 11:57 paulwong 閱讀(944) 評論(0)  編輯  收藏 所屬分類: SRPING BATCH

          主站蜘蛛池模板: 金沙县| 涿州市| 七台河市| 寿阳县| 汾西县| 合水县| 庆城县| 兴城市| 彩票| 万载县| 呈贡县| 广平县| 潜江市| 精河县| 敖汉旗| 驻马店市| 英吉沙县| 任丘市| 阿瓦提县| 喀喇沁旗| 阿克陶县| 青神县| 通山县| 通州市| 奈曼旗| 册亨县| 旌德县| 娱乐| 罗山县| 沛县| 西林县| 上虞市| 西宁市| 营山县| 内丘县| 正蓝旗| 涟水县| 莱州市| 台东市| 繁峙县| 公主岭市|