Schedulare task in Quarkus e Java

Mattepuffo's logo
Schedulare task in Quarkus e Java

Schedulare task in Quarkus e Java

Schedulare task in Quarkus è abbastanza facile aggiungendo una sua libreria apposita.

In questo articolo vediamo qualche esempio.

Se usate Maven:

<dependency>
  <groupId>io.quarkus</groupId>
  <artifactId>quarkus-scheduler</artifactId>
</dependency>

Qui sotto tre funzioni che lanciano tre scheduler diversi in tre modi diversi:

package com.mp;

import io.quarkus.scheduler.Scheduled;
import io.quarkus.scheduler.ScheduledExecution;
import jakarta.enterprise.context.ApplicationScoped;

@ApplicationScoped
public class MyScheduler {

  @Scheduled(every="10s")
  void increment() {
    System.out.println("10 secondi");
  }

  @Scheduled(cron="0/15 * * * * ?")
  void cronJob(ScheduledExecution execution) {
    System.out.println(execution.getScheduledFireTime());
  }

  @Scheduled(cron = "{cron.expr}")
  void cronJobWithExpressionInConfig() {
    System.out.println("Cron configurato in application.properties");
  }
}

Per la terza funzione dobbiamo aggiungere questa riga al file application.properties:

cron.expr=0/20 * * * * ?

Tutti e tre gli scheduler partono in automatico all'avvio dell'applicazione.

Enjoy!


Condividi

Commentami!