日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用maven 创建Quartz 任务示例_01

發布時間:2024/9/27 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用maven 创建Quartz 任务示例_01 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

            • 1. 創建maven項目
            • 2. 添加Quartz 依賴
            • 3. 編寫Quartz配置文件
            • 4. 編寫Job實現類
            • 5. 編寫main函數,創建Scheduler
            • 6. 創建JobDetail
            • 7. 編寫Trigger,添加JobDetail
            • 8. 啟動main函數,體驗Quartz定時任務

Quartz 支持集群,但不支持分布式,簡言之,一臺服務器上執行不同定時任務。

1. 創建maven項目




2. 添加Quartz 依賴
<!-- https://mvnrepository.com/artifact/org.quartz-scheduler/quartz --><dependency><groupId>org.quartz-scheduler</groupId><artifactId>quartz</artifactId><version>2.3.2</version></dependency>
3. 編寫Quartz配置文件
#配置任務調度器的實例名稱 org.quartz.scheduler.instanceName=MyScheduler#定義:配置線程池中的線程數量 #作用: 決定當前項中有多少個定時任務同時執行 #配置 3 代表這個項目可以同時執行3個定時任務 org.quartz.threadPool.threadCount=3#job存儲的類,有2種存儲方式 第1種存到內存 第2種存儲到數據庫 #這里先采用內存的存儲方式 org.quartz.jobStore.class=org.quartz.simpl.RAMJobStore
4. 編寫Job實現類
package com.gblfy.job; import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; import java.time.LocalTime;public class MyJob implements Job {@Overridepublic void execute(JobExecutionContext context) throws JobExecutionException {LocalTime localTime = LocalTime.now();System.out.println("我正在執行" + localTime);} }
5. 編寫main函數,創建Scheduler
//創建SchedulerScheduler scheduler = StdSchedulerFactory.getDefaultScheduler();scheduler.start();
6. 創建JobDetail
//創建JobDetailJobDetail jobDetail = JobBuilder.newJob(MyJob.class)//唯一標識.withIdentity("jobDetail1", "group1").build();
7. 編寫Trigger,添加JobDetail
//創建TriggerTrigger trigger = TriggerBuilder.newTrigger()//立即執行.startNow()//任務周期.withSchedule(SimpleScheduleBuilder.simpleSchedule()//間隔周期 單位s.withIntervalInSeconds(10)//一直執行.repeatForever()).build();//把jobDetail和trigger注冊到scheduler中 scheduler.scheduleJob(jobDetail, trigger);
8. 啟動main函數,體驗Quartz定時任務
package com.gblfy;import com.gblfy.job.MyJob; import org.quartz.*; import org.quartz.impl.StdSchedulerFactory;public class QuartzStart {public static void main(String[] args) throws SchedulerException {//創建SchedulerScheduler scheduler = StdSchedulerFactory.getDefaultScheduler();scheduler.start();//創建JobDetailJobDetail jobDetail = JobBuilder.newJob(MyJob.class)//唯一標識.withIdentity("jobDetail1", "group1").build();//創建TriggerTrigger trigger = TriggerBuilder.newTrigger()//立即執行.startNow()//任務周期.withSchedule(SimpleScheduleBuilder.simpleSchedule()//間隔周期 單位s.withIntervalInSeconds(10)//一直執行.repeatForever()).build();//把jobDetail和trigger注冊到scheduler中scheduler.scheduleJob(jobDetail, trigger);try {Thread.sleep(60000);} catch (InterruptedException e) {e.printStackTrace();}scheduler.shutdown();} }


從第一次之后沒10s執行一次

總結

以上是生活随笔為你收集整理的使用maven 创建Quartz 任务示例_01的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。