Spring cron expression for every day 1:01:am

后端 未结 6 911
南方客
南方客 2020-11-28 00:08

I\'m trying to have my code execute on a fixed schedule, based on a Spring cron expression. I would like the code to be executed every day at 1:01:am. I tried the following

6条回答
  •  一个人的身影
    2020-11-28 00:48

    Try with:

    @Scheduled(cron = "0 1 1 * * ?")
    

    Below you can find the example patterns from the spring forum:

    * "0 0 * * * *" = the top of every hour of every day.
    * "*/10 * * * * *" = every ten seconds.
    * "0 0 8-10 * * *" = 8, 9 and 10 o'clock of every day.
    * "0 0 8,10 * * *" = 8 and 10 o'clock of every day.
    * "0 0/30 8-10 * * *" = 8:00, 8:30, 9:00, 9:30 and 10 o'clock every day.
    * "0 0 9-17 * * MON-FRI" = on the hour nine-to-five weekdays
    * "0 0 0 25 12 ?" = every Christmas Day at midnight
    

    Cron expression is represented by six fields:

    second, minute, hour, day of month, month, day(s) of week
    

    (*) means match any

    */X means "every X"

    ? ("no specific value") - useful when you need to specify something in one of the two fields in which the character is allowed, but not the other. For example, if I want my trigger to fire on a particular day of the month (say, the 10th), but I don't care what day of the week that happens to be, I would put "10" in the day-of-month field and "?" in the day-of-week field.

    PS: In order to make it work, remember to enable it in your application context: https://docs.spring.io/spring/docs/3.2.x/spring-framework-reference/html/scheduling.html#scheduling-annotation-support

提交回复
热议问题