要获取TriggerTask的nextExecutionTime,可以使用Trigger的getNextExecutionTime方法,该方法需要传入TriggerContext对象。

具体实现步骤如下:

  1. 在TriggerTask中定义TriggerContext类型的属性,并在构造方法中初始化:
private TriggerContext triggerContext;

public TriggerTask(Trigger trigger) {
    this.triggerContext = new SimpleTriggerContext();
}
  1. 在run方法中获取nextExecutionTime,然后更新TriggerContext中的lastScheduledExecutionTime和lastActualExecutionTime:
@Override
public void run() {
    Date nextExecutionTime = trigger.nextExecutionTime(triggerContext);
    triggerContext.update(null, nextExecutionTime, null);
    // do something
}
TriggerTask triggerContext如何获取nextExecutionTime

原文地址: https://www.cveoy.top/t/topic/bnFr 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录