springBatch中Step逻辑流程图
2021-08-16 11:46:38 4 举报
重新梳理了。springbatch中step的逻辑流程
作者其他创作
大纲/内容
chunk 类型的Tasklet
AbstractStep#execute()
AbstractJob.execute()
抽象方法 .doExecute()
tasklet#execute()
TaskletStepBuilder#createTasklet()
SimpleStepBuilder#createTasklet()
区分不同的tasklet实现execuete方法
extends RepeatTempTaskExecutorRepeatTemplate#iterate(RepeatCallback)
SimpleJob.doExecute()
RepeatOperations#iterate()
RepeatTemplate#iterate(RepeatCallback)
RepeatCallback#doInIteration(RepeatContext)
taskletStep#ChunkTransactionCallback#doInTransaction
(StepBuilder)this.get()
(SimpleStepBuilder)this.chunk(size)
TransactionTemplate#execute(TransactionCallback)
this.build()
普通类型的tasklet的自定义实现。直接执行execute方法
chunkProvider#provide(contribution)
真正的tasklet实现execute方法
AbstractTaskletStepBuilder.createTasklet()
ChunkOrientedTasklet
return RepeatStatus.continueIf(!inputs.isEnd())
transactionManager.commit(status)
多线程
StepBuilderFactory
chunkContext.setComplete();
Tasklet 接口的实现
TransactionCallback#doInTransaction
transactionManager.getTransaction
单线程
ChunkOrientedTasklet#execute()
TaskletStep#doExecute()
0 条评论
下一页