从Quartz Scheduler javadocs中获取类setTimeZone的方法CronTrigger


  如果在此方法之后调用setCronExpression(CronExpression),则CronExpression上的TimeZone设置将“获胜”。但是,如果调用setCronExpression(String)
  此方法之后,此方法所应用的时区将保留在
  效果,因为String cron表达式不带有时区!


以不同的顺序调用两个二传手有什么区别?

最佳答案

共有三种情况-


您先调用setTimeZone(),再调用setCronExpression(CronExpression)。与CronExpression关联的时区将适用。
您先调用setTimeZone(),再调用setCronExpression(String)。由于String cron表达式没有关联的时区,因此将应用setTimeZone()指定的时区。
您先调用setCronExpression(CronExpression)或setCronExpression(String),再调用setTimeZone()。由setTimeZone()方法指定的时区将适用。

07-26 08:36