java浠诲姟璋冨害quartz鎬庝箞瀹炵幇
浣跨敤Quartz瀹炵幇Java浠诲姟璋冨害鐨勬楠ゅ涓嬶細
-
瀵煎叆Quartz搴擄細鍦ㄩ」鐩殑渚濊禆绠$悊涓紝娣诲姞Quartz搴撶殑Maven鎴朑radle渚濊禆銆?/p>
-
鍒涘缓Job绫伙細鍒涘缓涓€涓户鎵胯嚜
org.quartz.Job
鎺ュ彛鐨勪换鍔$被锛屽苟瀹炵幇execute(JobExecutionContext context)
鏂规硶锛屽湪璇ユ柟娉曚腑缂栧啓鍏蜂綋鐨勪换鍔¢€昏緫銆?/p>
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
public class MyJob implements Job {
public void execute(JobExecutionContext context) throws JobExecutionException {
// 浠诲姟閫昏緫
}
}
- 鍒涘缓璋冨害鍣細鍒涘缓
org.quartz.Scheduler
瀵硅薄锛屽苟杩涜閰嶇疆銆?/li>
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.impl.StdSchedulerFactory;
public class Main {
public static void main(String[] args) {
try {
// 鍒涘缓璋冨害鍣?/span>
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
// 鍚姩璋冨害鍣?/span>
scheduler.start();
// 娉ㄥ唽浠诲姟
JobDetail jobDetail = newJob(MyJob.class).withIdentity("myJob", "group1").build();
Trigger trigger = newTrigger().withIdentity("myTrigger", "group1").startNow().build();
scheduler.scheduleJob(jobDetail, trigger);
// 鍏抽棴璋冨害鍣?/span>
scheduler.shutdown();
} catch (SchedulerException e) {
e.printStackTrace();
}
}
}
- 娉ㄥ唽浠诲姟鍜岃Е鍙戝櫒锛氫娇鐢?code>org.quartz.JobDetail鍜?code>org.quartz.Trigger瀵硅薄鏉ユ敞鍐屼换鍔″拰瑙﹀彂鍣ㄣ€傚彲浠ヤ娇鐢?code>JobBuilder鍜?code>TriggerBuilder绫绘潵鍒涘缓杩欎簺瀵硅薄锛屽苟浣跨敤瀹冧滑鐨勬柟娉曡繘琛岄厤缃€?/li>
import static org.quartz.JobBuilder.*;
import static org.quartz.SimpleScheduleBuilder.*;
import static org.quartz.TriggerBuilder.*;
import org.quartz.JobDetail;
import org.quartz.Trigger;
// ...
JobDetail jobDetail = newJob(MyJob.class)
.withIdentity("myJob", "group1")
.build();
Trigger trigger = newTrigger()
.withIdentity("myTrigger", "group1")
.startNow()
.withSchedule(simpleSchedule()
.withIntervalInSeconds(10)
.repeatForever())
.build();
鍦ㄤ笂杩颁唬鐮佷腑锛?code>withIdentity()鏂规硶鐢ㄤ簬鎸囧畾浠诲姟鍜岃Е鍙戝櫒鐨勫敮涓€鏍囪瘑锛?code>startNow()鏂规硶鐢ㄤ簬绔嬪嵆寮€濮嬩换鍔★紝withSchedule()
鏂规硶鐢ㄤ簬鎸囧畾浠诲姟鎵ц鐨勬椂闂撮棿闅斿拰閲嶅娆℃暟銆?/p>
-
鍚姩璋冨害鍣細鍦ㄩ厤缃ソ浠诲姟鍜岃Е鍙戝櫒鍚庯紝璋冪敤璋冨害鍣ㄧ殑
start()
鏂规硶鏉ュ惎鍔ㄤ换鍔¤皟搴︺€?/p> -
鍏抽棴璋冨害鍣細褰撲换鍔¤皟搴﹀畬鎴愬悗锛岃皟鐢ㄨ皟搴﹀櫒鐨?code>shutdown()鏂规硶鏉ュ叧闂皟搴﹀櫒銆?/p>
浠ヤ笂鏄娇鐢≦uartz瀹炵幇Java浠诲姟璋冨害鐨勫熀鏈楠わ紝鍙互鏍规嵁瀹為檯闇€姹傝繘琛岃繘涓€姝ラ厤缃拰璋冩暣銆?/p>