springbootは注釈、インターフェースを通じてタイミングタスクを作成します。
プロジェクトではタイミングタスクがよく使われます。ある人はquartzを使っています。ある人は自分でスケジュールプラットフォームを作っているかもしれません。springbootはタスクを決めるサポートに対して、タイミングタスクの作成を簡単にします。
springbootにおけるタイミングタスクの作成
springbootのタイミングタスクの作成は、ここでは主に2つの方法を言います。は注釈によって を作成する。は、springbootで提供されるインターフェースを通じて を実現する。
springbootは注釈によってタイミングタスクを作成します。
まずpomを導入します
クラスでは主に@EnbleScheduling注解を使用しています。org.springframe ework:spring-contextというバッグの下にあります。
org.springframe ewarkを紹介します。spring-contextというカバンが使えます。
クラスで@EnbaleSchedulingを使ってタイムミッションを開いていますが、@Componentを使っているのはスプリング容器に注入するためです。ここで@Componentを使わないと注入しないですか?試したことがないです。試した仲間がいます。
具体的にタイミングを合わせて実行する方法には、@Schduledの注釈を使って、この注釈の中のパラメータはいろいろあります。これはcron式を使っています。ここでこの注釈のパラメータを紹介しましょう。
@Schduled注解の各パラメータ cron 使用方法:@Schduled(cron=「0/10***?」)
ソースコードの定義:Stering cron()default";
説明:cron表現は、私たちが日常的に使うcronです。具体的には貼り出さないです。 zone 使用方法:@Schduled(zone=「GMT+08:00」)
ソースコードの定義:Stering zone()default";
説明:タイムゾーン、cron表現はこのタイムゾーンに基づいて解析します。デフォルトは空です。アプリケーションのあるサーバーのタイムゾーンを取っています。普通は記入しなくてもいいです。jdkのTimeZoneと同じシステムを使っています。具体的には言いません。 fixedDelay 使用方法:@Scheduled(fixed Delay=1)
ソースコードの定義:long fixed Delay()default-1
説明:前回の実行が終わりました。どれぐらいの時間を置いてから実行しますか?単位はミリ秒です。 fixed DelayString 使い方:
@Schduled(fixed DelayString=「1」)
@Scheduled(fixed DelayString=「${プロファイル内の値}」)
ソースコードの定義:Stering fixed DelayString()default";
説明:fixedDelayと同じで、stringタイプの埋めることができます。単位はミリ秒です。配置ファイルの中の値を使って、使い方はspring注入プロファイルの使い方と同じです。 fixedRate 使用方法:@Scheduled(fixedRate=1)
ソースコードの定義:long fixedRate()default-1;
説明:前回の実行開始後、どれぐらいの時間を置いてから実行しますか?単位はミリ秒です。 fixedRateString 使い方:
@Scheduled(fixed RateString=「1」)
@Scheduled(fixedRateString=「{プロファイル内の値}」)
ソースコードの定義:Stering fixed RateString()default";
説明:fixedRateと同じで、stringタイプの埋めることができます。単位はミリ秒です。配置ファイルの中の値を使って、使い方はspring注入プロファイルの使い方と同じです。 initial Delay 使用方法:@Schduled(initial Delay=1)
ソースの定義:long initial Delay()default-1;
説明:前回の一回目の実行後、どれぐらいの時間を置いてから実行しますか?単位はミリ秒です。 initial DelayString 使い方:
@Schduled(initial DelayString=「1」)
@Scheduled(initial DelayString=「{プロファイル内の値}」)
ソースコードの定義:Stering initial DelayString()default";
説明:initial Delayと同じで、stringタイプの埋めることができます。単位はミリ秒です。配置ファイルの中の値を使って、使い方はspring注入プロファイルの使い方と同じです。
springbootはポートを通してタイミングタスクを作成します。
インターフェースを介してタイミングを作成すると、比較的柔軟になります。タイミングcron表現はコードの注釈に書かなくてもいいです。データベースなどの記憶システムに格納することで、インターフェースでこの構成の表現を取得することができます。このように簡単なタスクスケジュールプラットフォームを実現できます。データベース配置によって、タイミングタスクの実行を管理することができます。
インターフェースSchduling Configrerを実現します。
主に使っているのはこのインターフェースSchenduling Configrerです。彼はorg.springframe ebook.scheduling.annotations.Schheduling Configrerというパッケージパスです。実はすべてorg.springframe ork:spring-contextの下にあります。
org.springframe ewarkを紹介します。spring-contextというカバンが使えます。
configureTaskys方法を複写し、この方法はScheduledTask Registarによってタイミングタスクを追加します。大体の方法では、参加は基本的にスレッドオブジェクトです。後のパラメータは注解と同じです。主にcron式があります。delayは最後に実行されました。どれぐらいの時間を置いてから実行しますか?initialなどはいちいち説明しません。
コードを直接入れて栗を一つください。
実行結果を見ます。
springbootは定時的な任務を創建してみんなのためにここに言って、みんなを歓迎して交流に来て、文の中のいくつかの間違ったところを指摘して、私に認識を深めさせます。
締め括りをつける
以上で、springbootに関して注釈、インターフェースを通じてタイミングタスクを作成する文章を紹介しました。もっと関連のあるspringbootが作成したタイミングタスクの内容は以前の文章を検索したり、下記の関連記事を引き続き閲覧したりしてください。これからもよろしくお願いします。
springbootにおけるタイミングタスクの作成
springbootのタイミングタスクの作成は、ここでは主に2つの方法を言います。
springbootは注釈によってタイミングタスクを作成します。
まずpomを導入します
クラスでは主に@EnbleScheduling注解を使用しています。org.springframe ework:spring-contextというバッグの下にあります。
org.springframe ewarkを紹介します。spring-contextというカバンが使えます。
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
コードを直接入れて栗を一つください。
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* @createdTime: 2020/4/7 16:00.
* @version: 1.0 .
*/
// @EnableScheduling
@Component
@EnableScheduling
public class TestTask {
private static ThreadLocal<SimpleDateFormat> dateFormat =
ThreadLocal.withInitial(() -> new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
// @Scheduled
@Scheduled(cron = "0/10 * * * * ?")
private void task1() {
System.err.println(" , :" + dateFormat.get().format(new Date()));
}
}
実行結果を見ます。クラスで@EnbaleSchedulingを使ってタイムミッションを開いていますが、@Componentを使っているのはスプリング容器に注入するためです。ここで@Componentを使わないと注入しないですか?試したことがないです。試した仲間がいます。
具体的にタイミングを合わせて実行する方法には、@Schduledの注釈を使って、この注釈の中のパラメータはいろいろあります。これはcron式を使っています。ここでこの注釈のパラメータを紹介しましょう。
@Schduled注解の各パラメータ
ソースコードの定義:Stering cron()default";
説明:cron表現は、私たちが日常的に使うcronです。具体的には貼り出さないです。
ソースコードの定義:Stering zone()default";
説明:タイムゾーン、cron表現はこのタイムゾーンに基づいて解析します。デフォルトは空です。アプリケーションのあるサーバーのタイムゾーンを取っています。普通は記入しなくてもいいです。jdkのTimeZoneと同じシステムを使っています。具体的には言いません。
ソースコードの定義:long fixed Delay()default-1
説明:前回の実行が終わりました。どれぐらいの時間を置いてから実行しますか?単位はミリ秒です。
@Schduled(fixed DelayString=「1」)
@Scheduled(fixed DelayString=「${プロファイル内の値}」)
ソースコードの定義:Stering fixed DelayString()default";
説明:fixedDelayと同じで、stringタイプの埋めることができます。単位はミリ秒です。配置ファイルの中の値を使って、使い方はspring注入プロファイルの使い方と同じです。
ソースコードの定義:long fixedRate()default-1;
説明:前回の実行開始後、どれぐらいの時間を置いてから実行しますか?単位はミリ秒です。
@Scheduled(fixed RateString=「1」)
@Scheduled(fixedRateString=「{プロファイル内の値}」)
ソースコードの定義:Stering fixed RateString()default";
説明:fixedRateと同じで、stringタイプの埋めることができます。単位はミリ秒です。配置ファイルの中の値を使って、使い方はspring注入プロファイルの使い方と同じです。
ソースの定義:long initial Delay()default-1;
説明:前回の一回目の実行後、どれぐらいの時間を置いてから実行しますか?単位はミリ秒です。
@Schduled(initial DelayString=「1」)
@Scheduled(initial DelayString=「{プロファイル内の値}」)
ソースコードの定義:Stering initial DelayString()default";
説明:initial Delayと同じで、stringタイプの埋めることができます。単位はミリ秒です。配置ファイルの中の値を使って、使い方はspring注入プロファイルの使い方と同じです。
springbootはポートを通してタイミングタスクを作成します。
インターフェースを介してタイミングを作成すると、比較的柔軟になります。タイミングcron表現はコードの注釈に書かなくてもいいです。データベースなどの記憶システムに格納することで、インターフェースでこの構成の表現を取得することができます。このように簡単なタスクスケジュールプラットフォームを実現できます。データベース配置によって、タイミングタスクの実行を管理することができます。
インターフェースSchduling Configrerを実現します。
主に使っているのはこのインターフェースSchenduling Configrerです。彼はorg.springframe ebook.scheduling.annotations.Schheduling Configrerというパッケージパスです。実はすべてorg.springframe ork:spring-contextの下にあります。
org.springframe ewarkを紹介します。spring-contextというカバンが使えます。
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
主な方法configureTaskys方法を複写し、この方法はScheduledTask Registarによってタイミングタスクを追加します。大体の方法では、参加は基本的にスレッドオブジェクトです。後のパラメータは注解と同じです。主にcron式があります。delayは最後に実行されました。どれぐらいの時間を置いてから実行しますか?initialなどはいちいち説明しません。
コードを直接入れて栗を一つください。
import org.springframework.scheduling.TaskScheduler;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.SchedulingConfigurer;
import org.springframework.scheduling.config.ScheduledTaskRegistrar;
import org.springframework.scheduling.config.Task;
import org.springframework.stereotype.Component;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* @createdTime: 2020/4/7 18:33.
* @version: 1.0 .
*/
@Component
@EnableScheduling
public class TestTask2 implements SchedulingConfigurer {
private static ThreadLocal<SimpleDateFormat> dateFormat =
ThreadLocal.withInitial(() -> new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
/**
* Callback allowing a {@link TaskScheduler
* TaskScheduler} and specific {@link Task Task}
* instances to be registered against the given the {@link ScheduledTaskRegistrar}.
*
* @param taskRegistrar the registrar to be configured.
*/
@Override
public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
System.err.println(" ");
String cron = "0/10 * * * * ?";
taskRegistrar.addCronTask(() -> {
System.err.println(" , :" + dateFormat.get().format(new Date()));
},cron);
}
}
ここではconfigureTaskを書き換える方法により、ScheduledTask Registarオブジェクトを使ってタイミングタスクを作成し、表式をデータベースなどから読み込むことができます。デモの時にはそのコードを書かなくてもいいです。簡単なタスクスケジュールを実現することができます。実行結果を見ます。
springbootは定時的な任務を創建してみんなのためにここに言って、みんなを歓迎して交流に来て、文の中のいくつかの間違ったところを指摘して、私に認識を深めさせます。
締め括りをつける
以上で、springbootに関して注釈、インターフェースを通じてタイミングタスクを作成する文章を紹介しました。もっと関連のあるspringbootが作成したタイミングタスクの内容は以前の文章を検索したり、下記の関連記事を引き続き閲覧したりしてください。これからもよろしくお願いします。