跳至主要內容

Tasklet介绍


Tasklet介绍

tasklet元素定义任务的具体执行逻辑。

tasklet的属性

属性说明默认值
ref引用自定义实现Tasklet接口的Bean。当使用自定义的Tasklet业务的时候,必须使用ref来引用,如果使用Spring batch提供的chunk组件,需要使用chunk元素来定义业务。
method引用自定义的业务Bean,需要调用的操作,对操作的要求:参数需要和Tasklet.execute具有相同的参数。返回值:可以是void、Boolean或者RepeatStatusexecute
start-limitStep能够启动的最大次数,超过最大次数后会抛出异常Integer.MAX_VALUE
allow-start-if-complete是否允许完成(状态为"COMPLETED")的Step重新启动false
transaction-managertasklet配置的事务管理器,控制业务的处理操作
task-executor任务执行处理器,定义后表示采用多线程执行任务,需要考虑多线程执行任务时候的安全性
throttle-limit最大使用线程池的数目

tasklet的子元素

子元素说明
chunk定义面向批的业务操作,使用chunk可以复用Spring Batch提供的基础设施
transaction-attributes定义任务具体的事务属性,例如隔离级别、事务传播方式、超时时间等
no-rollback-exception-classes定义不会触发事务回滚的异常。通常情况下,作业处理过程中发生的任何异常都会导致作业事务的回顾,Spring Batch框架提供指定异常不影响事务的能力
listeners定义具体任务级别的拦截器
上次编辑于:
贡献者: Neil