java - 每天在特定时间之间每 15 分钟运行一次方法

标签 java timer calendar timezone frequency

我想在伦敦时间每天 08:01:00 到 16:31:00 之间每 15 分钟运行一次方法。

所以像这样:

foo(); //run every 15 mins, everyday, between 08:01:00 and 16:31:00.

public void foo(){
//do stuff
} 

我尝试过使用日历和计时器,但无法使其正常工作。

感谢您的帮助。

最佳答案

我希望我们在这里讨论的是在 JAVA 中运行任何作业。 因此,在 java 中,我们有 SchedulerFactory,它根据给定的 Cron 表达式来调度 Job。

//Create instance of factory
    SchedulerFactory schedulerFactory=new StdSchedulerFactory();

    //Get schedular
    Scheduler scheduler= schedulerFactory.getScheduler();

    //Create JobDetail object specifying which Job you want to execute
    JobDetail jobDetail=new JobDetail("myJobClass","myJob1",MyJob.class);

    //Associate Trigger to the Job
    CronTrigger trigger=new CronTrigger("cronTrigger","myJob1","0 0/1 * * * ?");

    //Pass JobDetail and trigger dependencies to schedular
    scheduler.scheduleJob(jobDetail,trigger);

    //Start schedular
    scheduler.start();

MyJob.class

public class MyJob implements Job{

      @Override
      public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
                 System.out.println("Your Logic");
        }

    }

现在对于你的计时工作来说,它会是这样的,

*/15 7-16 * * *

您可以查看有关 chrome 作业的更多信息 Here

我希望这会有所帮助。

关于java - 每天在特定时间之间每 15 分钟运行一次方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45059453/

相关文章:

java - MakeFile 不工作?

java - GraphQL 作为聚合器服务?

c# - 求某公历年农历新年公历的算法

c# - 在特定时间调用方法

在选择循环中重置 timer.NewTimer

css - Joomla 3 日历功能定位&图标

java - 波斯日历 - 从 Oracle DB 插入和检索波斯格式的日期

java - 由于断言,未调用关闭来响应

java - 计时器不会因 if else 而停止

qt - SailfishOS/Qt - 如何在给定日期调用我的应用程序,比如几周后