Создайте свою собственную фоновую среду SpringBoot с нуля (21)

Spring Boot Java
Всем привет, в этой главе мы добавляем функцию запланированных задач. Если у вас есть какие-либо вопросы, пожалуйста, свяжитесь со мной по адресу mr_beany@163.com. Также попросите руководства великих богов, спасибо

В большинстве проектов запланированные задачи используются для регулярного выполнения некоторых операций, таких как миграция файлов, резервное копирование и т. д. Сегодня я научусь с вами создавать временные задачи в SpringBoot.

1: Создать запланированное задание

Создать ядро→тесты→tesk.java

package com.example.demo.core.tasks;

import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import java.util.Date;

@Component
/**
 * 开启定时任务的注解
 */
@EnableScheduling
public class tesk {

    @Scheduled(fixedRate = 5000)
    public void job1(){
        System.out.println("定时任务1" + new Date());
    }

    @Scheduled(cron = "0/5 * * * * ?")
    public void job2(){
        System.out.println("定时任务2" + new Date());
    }
}

Два: @Scheduled введение

@Scheduled — это аннотация для установки периода выполнения задачи по времени.Есть два часто используемых параметра:

Первый — fixedRate, что означает выполнение с фиксированной частотой в миллисекундах, например, @Scheduled(fixedRate = 5000) означает выполнение каждые пять секунд.

Второй — cron, который может выражать определенную частоту, например выполнение в три часа ночи каждую ночь, двенадцать часов дня каждую среду и т. д.

Вы можете использовать Baidu для определенных выражений cron. Вот несколько часто используемых:

Выполнять каждые 5 секунд: */5 * * * * ?

Выполнять каждую 1 минуту: 0 */1 * * * ?

Выполнять раз в день в 23:00: 0 0 23 * * ?

Выполнять один раз в день в час ночи: 0 0 1 * * ?

Выполнять раз в месяц в 1:00: 0 0 1 1 * ?

Выполняется в 23:00 последнего дня каждого месяца: 0 0 23 L * ?

Выполняется раз в неделю в час ночи в воскресенье: 0 0 1 ?*L

Выполнить один раз в 26, 29, 33: 0 26,29,33 * * * ?

Выполнять один раз в день в 0:00, 13:00, 18:00 и 21:00: 0 0 0,13,18,21 * * ?

Выполнять каждые 5 минут: 0 0/5 * * * ?

Три: тест

Запустите сервер, вы можете увидеть печать консоли следующим образом


хорошо, успехов

Примечание. Описанные выше задачи синхронизации являются последовательными, если сложные и параллельные задачи синхронизации не выполняются.

адрес проекта

Адрес облака кода:git ee.com/bean также/no SPR…

Адрес гитхаба:GitHub.com/my bean also/no s…

Писать статьи непросто, если это вам поможет, нажмите звездочку

конец

Доработана функция добавления задач на время, а последующие функции будут обновляться одна за другой.Если у вас возникнут вопросы, пишите мне на mr_beany@163.com. Также попросите руководства у всех великих богов, спасибо всем.