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秒を示し、
ウェブマスターツールは、時間を一致させることができますがあります