springboot構成タスクと表現一般的に使用されるのcronのタイミング

springbootは、定期的なタスクを導入しました


メインタスクのspringboot導入時期は、次の手順を実行する必要があります
。1.関連する依存関係を導入
設定プログラムタイマータスク2.を
3.タスクタイミングを用意します

その依存関係の導入

唯一の鉛ベースのWebは、それに依存します

        <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>2.2.1.RELEASE</version>
        </dependency>

設定プログラムオープン定期的なタスク

それだけで、そのクラスのメイン関数Springboot上の1件のコメントを追加する必要があります

package com.jd;

/**
 * 只需要在这里面加上一个@EnableScheduling这个注解就可以了
 */
@SpringBootApplication
@EnableScheduling
public class Demo {
    public static void main(String[] args) {
        SpringApplication.run(Demo.class, args);
    }
}

スケジュールされたタスクが用意し
、次のようにタスクスケジュールされたタスクは、パッケージの下に配置され、一般的に:

package com.jd;

@Component
public class TestTask {

    /**
     * 定时任务的类和别的springBean没什么区别
     * 方法上要加@Scheduled,里面写定时的cron表达式
     */
    @Scheduled(cron = "0/5 * * * * *")
    public void testSchedule(){
        System.out.println(new Date());
        System.out.println("这个是每5秒执行一次");
    }
}

 結果は:


一般的に使用されるのcron表現

学生に精通していないのcron式の場合、あなたはオンラインhttps://qqe2.com/cron生成するには、このウェブサイトに行くことができる
のcron式は、それぞれの顔を勉強し、前方から読み込まれる* XX、学校からの数字をXXは、すべての最後以上のプラスの実行を検討/ XXを経験して、始め
DEMOで説明したように

cron = "0/5 * * * * *"

毎週、毎年、毎月、毎日、毎時間、毎分は、5秒ごとに一度実行0秒から始まる
:というように、次のような共通の表現持っ
0 0/10 * *:実行するために10分ごとに* *
夜06時〇 〇一日一回実行:0018 * * *
毎月第1三時実行時間:0031 * *

DEMO总评

このタスクのタイミングは、このような項目を書くのは一般に小さく、実際の生産では、中央に設定し、スケジュールされたタスクへの分散フレームワークを使用し、様々な用途であっ散乱されることはありません、cronの発現における主な問題の嘘は、下手に書かれ、それが必要の書き込みのcron表現するために、より合計、

 

公開された760元の記事 ウォンの賞賛636 ビュー110 000 +

おすすめ

転載: blog.csdn.net/qq_41946557/article/details/104318868