@Scheduled每一小时不起作用。尝试了各种选项

时间:2018-01-04 04:21:40

标签: spring

我需要使用@Schedule spring annotation with cron参数来每小时运行一次作业。我尝试了各种选项,但似乎没有用。

有人可以帮助我使用有效的表达式每1小时运行一次吗?

ex:1:00 2:00 3:00 4:00 5:00 6:00 7:00等,

简称:http://www.baeldung.com/spring-scheduled-taskshttp://www.baeldung.com/cron-expressions

尝试以下

0 0/60 * * * * 
0 * 0/1 * * *
* * 0/1 * * *
* * 0/60 * * *

感谢。

2 个答案:

答案 0 :(得分:1)

@Component
public class SomeScheduler {

   @Scheduled(cron = "0 0 0/1 * * ?")
   public void print() {
      System.out.println("====>> print method()...");
   }
}

@EnableScheduling
@Configuration
public class AppStarter {

}

答案 1 :(得分:0)

FixedRate注释每小时运行一次

@Scheduled(fixedRate=60*60*1000)
public void scheduleFixedRateTask() {
System.out.println(
  "Fixed rate task - " + System.currentTimeMillis() / 1000);
}

FixedRate注释每小时运行一次,延迟10分钟。如果你想初始延迟开始工作,你可以指定" initialDelay"。如果指定此值,则在给定延迟之后将首次启动作业。在下面的示例中,该方法计划在每小时运行,初始启动延迟为10分钟。

@Scheduled(fixedRate=60*60*1000, initialDelay=10*60*1000)