在企業應用的關鍵環境中,一般有須要不少應用來來處理大量的應用。這商業操做包括了自動化,而且負責的處理程序來對大量數據進行高效的處理,一般這些程序不須要人工進行干預。這些事件包括有基於時間週期產生的操做(例如,月末統計計算,通知或者消息通知,或者按期處理那些業務邏輯很是複雜,而且數據量很是大的操做(例如,保險的保額肯定或者保險費率的調整),也有多是從內部或者外部抓取到的數據的格式化,一般這些數據須要進行格式化,校驗,而且經過事務來整合到本身的數據庫中。批處理一般被用來針對企業天天產生超過億萬級別的數據量。數據庫
Spring Batch是一個輕量級的綜合性批處理框架,可用於開發企業信息系統中那些相當重要的數據批量處理業務。Spring Batch 是基於生產率來進行構建的,而且基於 POJO 進行開發,用戶也很容易上手使用,讓開發者很容易的訪問和使用企業級服務。Spring Batch 不是一個自動運行框架。在市面已經有了不少企業級和開源的自動運行框架,例如 Quartz,Tivoli, Control-M 等。Spring Batch 被設計與計劃任務和調度程序一同協做完成任務,而沒有被設計用來取代任務調度和計劃任務。框架
Spring Batch 提供了可重用的功能,這些功能被用來對大量數據和記錄進行處理,包括有日誌/跟蹤(logging/tracing),事務管理(transaction management),任務處理狀態(job processing statistics),任務重啓(job restart),任務跳過(job skip)和資源管理(resource management)。 此外還提供了許多高級服務和特性, 使之可以經過優化(optimization ) 和分片技術(partitioning techniques)來高效地執行超大型數據集的批處理任務。優化
Spring Batch 是一個具備高可擴展性的框架。無論簡單仍是複雜,仍是大批量的處理任務,均可以使用 Spring Batch 框架來實現。設計
https://www.cwiki.us/display/SpringBatchZH/Spring+Batch+Introductionrest