java - 如何使用 Spring 框架实现 Java cron 作业,我正在寻找 Spring Batch 吗?

标签 java spring cron spring-batch java-threads

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

提前致谢..

最佳答案

要在计划时间运行进程,您可以将任何表达式(unix cron expression 或固定延迟/速率)与 spring 框架的 Scheduled 注释一起使用。

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/调度程序,解释如下 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>

关于java - 如何使用 Spring 框架实现 Java cron 作业,我正在寻找 Spring Batch 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34744052/

相关文章:

linux - VMStat 每天午夜运行,每次进入之前的时间

java - java有控制台应用程序的概念吗?

java - Antlr4 在简单语法上没有找到任何可行的输入字符串替代方案

spring - 如何以编程方式为spring tasklet(不是 block )配置容错

java - 从 portlet 将图像上传到 liferay 主题

java - spring boot 在提取 jar 时运行 JarLauncher

php - 使用 PHP 的基于 Cron 的 Google Analytics API 请求

java - 编译的 Jar 文件中包含根目录信息吗?

java - 在项目 react 器中包装阻塞 I/O

python - 如何在线运行python脚本?