<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                步驟如下: **1. 引入 spring-boot-starter-quartz** ```xml <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-quartz</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.24</version> </dependency> </dependencies> ``` **2. 定時任務要執行的業務代碼** ```java @Slf4j public class AccountJob extends QuartzJobBean { @Override protected void executeInternal(JobExecutionContext context) throws JobExecutionException { //通過 JobDataMap 獲取任務傳遞過來的參數 JobDataMap fromJobData = context.getJobDetail().getJobDataMap(); JobDataMap fromTriggerData = context.getTrigger().getJobDataMap(); log.info("任務傳遞的數據:{}", fromJobData.get("hello") + " " + fromJobData.get("world")); log.info("觸發器傳遞的數據:{}\n", fromTriggerData.get("hello") + "," + fromTriggerData.get("world")); } } ``` **3. 創建定時任務** ```java @Slf4j @RestController public class AccountJobController { @Autowired private Scheduler scheduler; @GetMapping("/createJob") public void createJob() throws SchedulerException { //定義任務 JobDetail jobDetail = JobBuilder //定時任務要執行的業務代碼 .newJob(AccountJob.class) //傳遞參數 .usingJobData("hello", "Hello") .usingJobData("world", "World!") //withIdentity(String name, String group) //該 JobDetail 的 ID,由name(任務名稱) + group(任務組) 組成。ID 需要保證全局唯一 .withIdentity("job1", "job-group1") .build(); //定義觸發器 Trigger trigger = TriggerBuilder.newTrigger() //也可以在觸發器這里傳遞參數 .usingJobData("hello", "你好") .usingJobData("world", "世界!") //該觸發器的 ID .withIdentity("trigger1", "trigger-group1") //定時任務立刻執行,也可以用 startAt(Date) 來指定具體執行時間 .startNow() //定時任務的執行規則 .withSchedule( SimpleScheduleBuilder.simpleSchedule() //每隔 4s 執行一次 .withIntervalInSeconds(4) //重復執行,不調用該 API 否則只執行一次 .repeatForever() ) .build(); //任務與觸發器綁定 scheduler.scheduleJob(jobDetail, trigger); //啟動調度器 scheduler.start(); } } ``` **4. 測試,創建定時任務后日志輸出如下** ``` //每隔 4s 執行一次 2023-03-30T18:43:43...job.AccountJob : 任務傳遞的數據:Hello World! 2023-03-30T18:43:43...job.AccountJob : 觸發器傳遞的數據:你好,世界! . 2023-03-30T18:43:47...job.AccountJob : 任務傳遞的數據:Hello World! 2023-03-30T18:43:47...job.AccountJob : 觸發器傳遞的數據:你好,世界! . 2023-03-30T18:43:51...job.AccountJob : 任務傳遞的數據:Hello World! 2023-03-30T18:43:51...job.AccountJob : 觸發器傳遞的數據:你好,世界! ... ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看