Spring Batch流程介绍

Spring Batch流程介绍:

上图描绘了Spring Batch的执行过程。说明如下:

    每个Batch都会包含一个JobJob就像一个容器,这个容器里装了若干StepBatch中实际干活的也就是这些Step,至于Step干什么活,无外乎读取数据,处理数据,然后将这些数据存储起来(ItemReader用来读取数据,ItemProcessor用来处理数据,ItemWriter用来写数据) JobLauncher用来启动JobJobRepository是上述处理提供的一种持久化机制,它为JobLauncherJob,和Step实例提供CRUD操作。

    外部控制器调用JobLauncher启动一个JobJob调用自己的Step去实现对数据的操作,Step处理完成后,再将处理结果一步步返回给上一层,这就是Batch处理实现的一个简单流程。

 

Step执行过程:

      DB或是文件中取出数据的时候,read()操作每次只读取一条记录,之后将读取的这条数据传递给processor(item)处理,框架将重复做这两步操作,直到读取记录的件数达到batch配置信息中”commin-interval”设定值的时候,就会调用一次write操作。然后再重复上图的处理,直到处理完所有的数据。当这个Step的工作完成以后,或是跳到其他Step,或是结束处理。

     这就是一个SpringBatch的基本工作流程。

posted on 2013-08-14 19:08  bbsno  阅读(189)  评论(0编辑  收藏  举报

导航