在固定的时间内执行计划程序

时间:2018-09-05 14:45:47

标签: java spring spring-scheduled

我想每天执行两次此作业:

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。

是否可以配置这些时间?

3 个答案:

答案 0 :(得分:4)

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

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

在您的示例中,其外观如下:

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

答案 1 :(得分: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

生成它

答案 2 :(得分:1)

您可以使用cron表达式:

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