Annotation Type Scheduled


@Target({TYPE,PARAMETER,METHOD}) @Retention(RUNTIME) @Documented public @interface Scheduled
Usage: 
 @Scheduled(cron="0 15 10 ? * 6L 2012-2015")// org.quartz cron expression: Fire at 10:15am on every last Friday of every month during the years 2012, 2013, 2014 and 2015
 @Scheduled(dayOfMonth = 1, hour=2, minute=3)// monthly: every 2:03am 1st day of the month
 @Scheduled(daysOfWeek=1, hour=14, minute=15)// weekly: 2:15pm every Sunday
 @Scheduled(daysOfWeek={1, 6, 7}, hour=14, minute=15)// weekly: 2:15pm every Sunday, Friday and Saturday
 @Scheduled(hour = 14, minute = 15, second = 16)// daily: 2:15:16pm everyday
 @Scheduled(minute = 15, second = 16)// hourly: every hour at the 15th minute and the 16th second
 @Scheduled(second = 16)// minutely: every minute at the 16th second
 @Scheduled(fixedRate = 10_000, initialDelay=5_000)// start job after 5 seconds, run job every 10 secsonds no matter how long the job takes
 @Scheduled(fixedDelay = 10_000, initialDelay=5_000)// start job after 5 seconds, when the job finished wait 10 seconds then start it again
 
Author:
Changski Tie Zheng Zhang 张铁铮, 魏泽北, 杜旺财, 杜富贵
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
     
    int[]
    1-31: for monthlyOnDayAndHourAndMinute(int dayOfMonth, int hour, int minute)
    int[]
    1-7 for SUN-SAT: for atHourAndMinuteOnGivenDaysOfWeek(int hour, int minute, Integer[] daysOfWeek)
    long
    The fixedDelay makes sure that there is a delay of n millisecond between the finish time of an execution of a task and the start time of the next execution of the task.
    long
    The fixedRate runs the scheduled task at every n millisecond.
    int
    0-23: for dailyAtHourAndMinute(int hour, int minute)
    long
    start job after n millisecond
    int
    0-59
    int
    0-59
  • Element Details

    • cron

      String[] cron
      Default:
      {}
    • daysOfMonth

      int[] daysOfMonth
      1-31: for monthlyOnDayAndHourAndMinute(int dayOfMonth, int hour, int minute)
      Returns:
      Default:
      {}
    • daysOfWeek

      int[] daysOfWeek
      1-7 for SUN-SAT: for atHourAndMinuteOnGivenDaysOfWeek(int hour, int minute, Integer[] daysOfWeek)
      Returns:
      Default:
      {}
    • hour

      int hour
      0-23: for dailyAtHourAndMinute(int hour, int minute)
      Returns:
      Default:
      -1
    • minute

      int minute
      0-59
      Returns:
      Default:
      -1
    • second

      int second
      0-59
      Returns:
      Default:
      -1
    • fixedRate

      long fixedRate
      The fixedRate runs the scheduled task at every n millisecond. It doesn't check for any previous executions of the task. This is useful when all executions of the task are independent. If we don't expect to exceed the size of the memory and the thread pool, fixedRate should be quite handy. Although, if the incoming tasks do not finish quickly, it's possible they end up with “Out of Memory exception”.
      Returns:
      Default:
      0L
    • fixedDelay

      long fixedDelay
      The fixedDelay makes sure that there is a delay of n millisecond between the finish time of an execution of a task and the start time of the next execution of the task. This property is specifically useful when you need to make sure that only one instance of the task runs all the time. For dependent jobs, it is quite helpful.
      Returns:
      Default:
      0L
    • initialDelay

      long initialDelay
      start job after n millisecond
      Returns:
      Default:
      0L