在固定的小时内执行调度程序

问题描述 投票:1回答:3

我想每天执行这个工作2次:

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

@Component
public class AppScheduler {

    @Scheduled(fixedRate = 10000)
    public void myScheduler() {
        System.out.println("Test print");
    }

}

第一次是11:00,第二次是14:00。

有没有办法配置这些时间?

java spring spring-scheduled
3个回答
4
投票

是的,您可以使用CRON表达式在给定的天/小时安排任务执行:

https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/scheduling/support/CronSequenceGenerator.html

在您的示例中,它将如下所示:

@Scheduled(cron="0 0 11,14 * * *")

1
投票
@Scheduled(cron = "0 0 11,14 * * *")

这意味着

At second :00, at minute :00, at 11am and 14pm, of every day

你可以在这里生成它https://www.freeformatter.com/cron-expression-generator-quartz.html


1
投票

你可以使用cron表达式:

@Scheduled(cron = "0 0 11,14 * * *")
© www.soinside.com 2019 - 2024. All rights reserved.