【发布时间】:2016-09-16 03:25:36
【问题描述】:
我遇到了 cron 表达式的问题。 我必须从周四到周日每 30 分钟运行一次方法。时间从20:35开始到23:35。
Cron 表达式:
"0 35/30 20-23 ? * THU-SUN";
据我了解;我的方法将在星期四的 20:35 分钟调用,每 30 分钟调用一次,直到星期日。
我的期望:
方法将按照以下时间调用:
Thu May 19 20:35:00 IST 2016
Thu May 19 21:05:00 IST 2016
Thu May 19 21:40:00 IST 2016
但是;方法按以下时间调用:
Thu May 19 20:35:00 IST 2016
Thu May 19 21:35:00 IST 2016
Thu May 19 22:35:00 IST 2016
谁能帮帮我。为什么 cron 表达式每 1 小时评估一次。??
这里是代码示例:
@Scheduled(cron="0 35/30 20-23 ? * THU-SUN")
public void startInboundSFTPChannel(){
logger.info("Cron job started....");
downloadSftpFilesController();
}
【问题讨论】:
-
您应该告诉我们您的 cron 表达式是如何使用的(也许添加一些代码?)
-
是不是更容易使用:
"0 5,35 20-23 ? * THU-SUN";? -
嗨 RC..我添加了一些代码部分。请检查。
-
嗨@tommus,这个 cron 表达式不起作用。因为它会从晚上 8 点到晚上 11 点每 05 分钟和 35 分钟开始一次。
-
所以您希望它从星期四 20.35 开始,并在所有日子和时间每 30 分钟运行一次,直到星期日 23.35 或此时间范围内的每一天?
标签: java cron cronexpression