【发布时间】:2016-04-28 01:33:34
【问题描述】:
我有一个 Quartz cron 作业,它在一天中的特定时间(比如凌晨 3:00)启动并运行良好,调用它的 itemreader 和 item writer。 问题是,它执行多次调用其项目阅读器。 现在,我只是在阅读器中保留了一个标志来阻止它。有没有更好的方法来做到这一点。
commit-interval = 60 有问题吗?作为没有。读者必须阅读的记录数是 10 。话虽如此,读者阅读这 10 项,而作者将其写入 DB。现在再次调用读者,这是一个问题。作业xml如下:
<batch:job id="AAA_job">
<batch:step id="step1">
<batch:tasklet>
<batch:chunk reader="XReader" writer="XWriter" commit-interval="60">
</batch:chunk>
</batch:tasklet>
</batch:step>
</batch:job>
<bean id="XReader"
class="com.X.store.batch.X.jobs.XXReader"
scope="step">
<property name="AName" value="${AAA}"></property>
<property name="bu" ref="bu" />
</bean>
<bean id="XWriter" class="com.X.store.batch.X.jobs.XXWriter" scope="step" >
<constructor-arg ref="xDS" />
<property name="SSU" value="${ssu}" />
</bean>
【问题讨论】:
标签: java spring cron scheduled-tasks quartz-scheduler