日期配置错误

时间:2019-04-13 12:59:49

标签: java

我使用此代码在修复时间内执行Job。

private static final ZoneId zone = ZoneId.systemDefault();
private static final ZonedDateTime zonedDateTime = ZonedDateTime.now(zone);

@Scheduled(cron = "0 0 0 * * *")
public void PaymentTransactionsDailyFactsScheduler() throws Exception { 
    .......

    DateTimeFormatter format = DateTimeFormatter.ofPattern("MMM d yyyy  hh:mm a");
    String time = zonedDateTime.format(format);

    System.out.printf("Job Scheduler executed (%s, (%s))\n", time, zone);
}

但是每次我得到Job Scheduler executed (Apr 13 2019 03:41 PM, (Europe/Germany))

您知道为什么时间每次都完全相同吗?可能我需要删除最终版吗?

1 个答案:

答案 0 :(得分:3)

在初始化类时,仅创建一次ZonedDateTime对象。

如果希望执行该方法的当前时间,请在该方法的内部中创建它。