如何在固定时间间隔后和给定时间间隔之间将spring中的调度程序任务设置为运行

How to set scheduler task in spring to run after a fixed interval of time and between a given interval of time

我正在尝试编写一个 Spring cron 表达式,让我的代码在固定的时间间隔后和给定的时间间隔之间执行。我希望代码在白天的早上 6 点到下午 6 点之间每隔 20 分钟执行一次。

以下是每 20 分钟 运行 宁代码的表达式,但我不知道如何在给定的时间间隔之间将其限制为 运行(我可以限制 cron 中的计划吗表达式,否则我将不得不在 java class 的代码中实现逻辑。

<task:scheduled-tasks>
        <task:scheduled ref="commonSchedulerForSms" method="sendCommonSmsReport"
        cron="0 0/20 * * * ?" />
</task:scheduled-tasks>

我正在开发 Spring 3.0 版、Servlet 2.5 版和 Java 1.6 版。

提前致谢。

试试这个表达式:

0 0/20 6-17 * * ?

从早上 6 点到 5:40 下午(06:00 到 17:40)每 20 分钟触发一次