Springboot Использовать метод использования таймера Добавить @scheduledanted Annotation для разработки параметров Cron
пакет com.clsystem.comm; import org.springframework.scheduling.annotation.scheduled;/** * Создан пудинг на 2017-11-10. (Задача записи) // бизнес -логика}}
Реализация динамического таймера также очень проста, чтобы наследовать метод реализации класса PdeculingConfigurer.
пакет com.clsystem.comm; import com.clsystem.util.dateutil; import org.springframework.beans.factory.annotation.autowired; импорт org.springframework.scheduling.trigger; import org.springframework.scheduling.triggercontext; org.springframework.scheduling.annotation.schedulingConfigurer; импорт org.springframework.scheduling.config.scheduledtaskregistrar; импорт org.springframework.scheduling.support.crontriger; java.util.calendar; import java.util.date;/*** Создан пудинг на 2017-11-15. (Динамический таймер используется для нажимания сообщений за 10 минут до регистрации) (! CHACK) */ @ComponentPublic Class DynamicsChedLedTask реализует PradulingConfigurer {@Autowired Private checksystemmapper chectsystemmapper; @Override public void configureTasks (preduledTaskRegistrar taskRegistrar) {taskRegistrar.addtriggertask (new Runnable () {@Override public void run () {// Business Logic System.out.println ("emek-in");}}, new Trigger () {@Override publictecture atextecture nextemocation {// Установите следующий таймер integer day = dateutil.getday (); // Получить сегодняшний день в будние дни+= 1; // Beforemorntimehour = integer.parseint (morntime.substring (0, j); // Получить утреннее рабочее время integer beforemorntimeminate = integer.parseint (morntime.substring (j+1, morntime.length ()); // Получить утреннее время дата даты = новая дата (); date.setminutes (beforemorntimemine); minute = cal.get (calendar.minute); // Stack String Cron = "0"+Minute+""+Hour+" *"+Day+""; trigger.nextexecutiontime (TriggerContext); }}Основное использование параметров Cron:
● asterisk (): может использоваться во всех полях для представления каждого момента в соответствующем временном домене, например, в минуте, это означает «в минуту»;
● Вопрос (?): Этот символ используется только в областях даты и недели, и он обычно определяется как «бессмысленное значение», что эквивалентно точечному символу;
● Знак минус (-): Экспресс диапазон. Если «10-12» используется в часовом поле, это означает от 10 до 12 баллов, то есть 10, 11, 12;
● Запятая (,): выразить значение списка. Если вы используете «Мон, ср, пт» на неделе, это означает понедельник, среду и пятницу;
● SLASH (/): x/y представляет собой последовательность с одинаковым шагом, x является начальным значением, а Y-инкрементное значение шага. Если вы используете 0/15 в мельчайшем поле, он выражается как 0, 15, 30 и 45 секунд, а 5/15 означает 5, 20, 35, 50 в минуте поле, вы также можете использовать */y, что эквивалентно 0/y;
● L: Этот символ используется только в областях даты и недели, представляя значение «последнего», но это означает по -разному в двух областях. L в поле даты указывает на последний день месяца, например, 31 января и 28 февраля, который не является лечебным годом; Если L используется в течение недели, это указывает на субботу, что эквивалентно 7. Однако, если L появляется в поле недели, и ему предшествует значение X, это означает «последние x дней месяца», например, 6L означает последнюю пятницу месяца;
● W: этот персонаж может появиться только в поле даты и является изменением ведущей даты, указывающей на рабочий день, ближайший к дате. Например, 15W представляет собой ближайший рабочий день до 15 -го числа месяца. Если 15 -е место в субботу, он соответствует пятнице 14 -го; Если 15 -е место в воскресенье, он соответствует в понедельник 16 -го; Если 15 -й месяца - вторник, это вторник 15 -й. Тем не менее, следует отметить, что связанная дата соответствия не может быть пересечена до месяца. Если вы указываете 1W, если 1 -й день - суббота, результат совпадает с понедельником 3, а не в последний день прошлого месяца. Строка W может указать только одну дату, но не может указать диапазон дат;
● Комбинация LW: LW может использоваться в поле даты, что означает последний рабочий день месяца;
● Ключевой знак (#): этот символ может использоваться только в поле недели и представляет собой рабочий день месяца. Например, 6#3 представляет третью пятницу месяца (6 представляет пятницу, № 3 представляет третью на данный момент), в то время как 4#5 представляет пятую среду месяца, предполагая, что месяц не имеет пятой среды, он игнорируется и не запускается;
● C: Этот символ используется только в областях даты и недели, что представляет значение «календарь». Это означает дату, связанную с планом, и если дата не связана, она эквивалентна всем датам в календаре. Например, 5C в поле даты эквивалентно первому дню после 5 -го дня календаря. 1c эквивалентен первого дня после воскресенья на неделе.
Выражения Cron не чувствительны к случаю специальных персонажей и не чувствительны к аббревиатуре английского дела недели.
В таблице 2 показаны некоторые примеры полных представлений Cron ниже:
Выражение Cron означает "0 0 12 * *?" Триггер "0 15 10? * *" Триггер "0 15 10 * *?" Триггер "0 15 10 * *?" Триггер "0 15 10 * *? *" Триггер "0 15 10 * *? *" Триггер "0 15 10 * *? 2005" Триггер "0 * 14 * *?" Триггер "0 0/5 14 * *?" Триггер "0 0/5 14 * *?" Триггер "0 0/5 14,18 * *?" Триггер "0 0/5 14,18 *?" Триггер "0 0/5 14,18 *?" 0 0-5 14 * *? » Каждые 5 минут с 2:00 до 14:05 каждый день триггеры "0 10,44 14? 3 Ср "каждую среду в марте триггеры» 0 15 10? * Пн-пт "каждый понедельник, вторник, среда, четверг и пятница.
Суммировать
Выше приведено использование динамического таймера Springboot, представленного вам редактором. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя. Большое спасибо за вашу поддержку сайту wulin.com!