自動的にプロパティとタイミングタスクを使用してマッピングされた注釈SpringBootプロフィール

        java.util.Timer来る1、定期的なタスクの一般的なJavaクラス
            タイマーを:設定があまりにも面倒、時間遅延問題のある
            推奨されません。TimerTaskを

        図2に示すように、石英フレーム
            簡単な構成
            XMLまたは注釈

        図3に示すように、タイミングタスク開く注釈使用SpringBoot様式
            1)オートスキャン、タスクの開弁時期を@EnableSchedulingクラスを起動
            2)トラフィッククラス注釈付きタイマタスクは@Componentコンテナをスキャンすることである
            3)は、(fixedRate = 2000 @Scheduledタイミング注釈を行う方法)を1回定期的に実行

 

コードに直接言っても過言ではありません

@Component //让Spring 扫描到这个
@PropertySource("classpath:application.yml") // 配置文件的路径
@ConfigurationProperties(prefix = "task") // 映射配置文件里面的那个节点
@EnableScheduling // 开启定时任务
public class TaskTest {

    @Scheduled(cron = "${cron.time}") //@Scheduled 那个方法开启定时任务  cron = "${cron.time}" 任务的时间
    public  void printTime(){
        System.err.println("当前时间:"+new Date());
    }
}

このOK

@PropertySource( "クラスパス:application.yml") 

問題があるだろうときに私はこのアイデアを使用し、クラスパスは、ここで見つけるポンポンファイルにjarファイルを追加する必要はありませんと述べました

<!--配置文件处理-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

@Scheduled(クーロン= "$ {cron.time}")

この1は、より表現の形であるだけでなく、このような多くのオプションではcron属性ました

@Scheduled(fixedRate = 2000)
@Scheduled(fixedRateString = "2000")
@Scheduled(fixedDelay = 2000)
@Scheduled(fixedDelayString = "2000")

fixedRateこれに関係なく、次のかどうか、実装の完全なを実行するために2秒です

FIXEDDELAYこれは2秒で、その後、一度行ったが、実行が完了するために以下の方法が待っています

cron:
  time: "*/2 * * * * *"

"* / 2 * * * * *" 実行するために2秒を示し、

ウェブマスターツールは、時間を一致させることができますがあります

https://tool.lu/crontab/

 

 

 

公開された10元の記事 ウォンの賞賛0 ビュー515

おすすめ

転載: blog.csdn.net/DNCCCC/article/details/105031016
おすすめ