如何使用 spring 框架实施 Java cron 作业,我正在寻找 spring 批处理?

How to implement Java cron jobs with spring framework and is spring batch am i looking for?

目前我们每天使用 java.util.concurrent.ExecutorServicejava.util.concurrent.Futurejava.util.concurrent.Callable 到 运行 个 cron 作业。这里我们的任务是从 Gmail java api 抓取联系人。我们想用 spring 框架实现 cron 作业。请告诉我怎么做?

提前致谢..

Spring 批处理 + cron

请看下面link: [1]http://www.mkyong.com/spring-batch/spring-batch-and-spring-taskscheduler-example/

对于 运行 计划时间的进程,您可以使用任何表达式(unix cron expression 或 fixed delay/rate)和 spring 框架的计划注释。

public class DemoScheduleCron
{
    @Scheduled(cron="*/10 * * * * ?")
    //@Scheduled(fixedDelay = 10000)
    //@Scheduled(fixedRate = 10000)
    public void method1()
    {
        System.out.println("This method executs for every 10 seconds");
    }
}

要实现从 Gmail api 中抓取联系人,您可以使用 spring Quartz / scheduler 解释 here

从上面的文档配置并发的小片段:

<bean id="taskExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
    <property name="corePoolSize" value="5" />
    <property name="maxPoolSize" value="10" />
    <property name="queueCapacity" value="25" />
</bean>

<bean id="taskExecutorExample" class="TaskExecutorExample">
    <constructor-arg ref="taskExecutor" />
</bean>