@scheduled(cron = 0 0 2 * * )

3 min read Aug 30, 2024
@scheduled(cron = 0 0 2 * * )

Memahami Dekorator @scheduled(cron = "0 0 2 * *") dalam Spring Boot

Dekorator @scheduled(cron = "0 0 2 * *") adalah fitur powerful dalam Spring Boot yang memungkinkan Anda untuk menjadwalkan eksekusi method secara periodik menggunakan cron expression. Cron expression adalah string yang menentukan pola waktu untuk menjalankan tugas.

Apa itu Cron Expression?

Cron expression adalah bahasa khusus yang digunakan untuk mendefinisikan jadwal berulang. Expression terdiri dari enam field yang dipisahkan oleh spasi:

  1. Detik (0-59)
  2. Menit (0-59)
  3. Jam (0-23)
  4. Hari dalam Bulan (1-31)
  5. Bulan (1-12)
  6. Hari dalam Minggu (0-7) (0 atau 7 adalah Minggu)

*Menafsirkan Cron Expression "0 0 2 * "

  • **0 0 2 * ***: Ini berarti tugas akan dijalankan setiap hari pada pukul 02:00 (jam 2 pagi).

Cara Menggunakan Dekorator @scheduled

  1. Tambahkan Dependensi: Pastikan Anda memiliki dependensi Spring Boot yang tepat untuk scheduler:

    
        org.springframework.boot
        spring-boot-starter-web
    
    
  2. Dekorasi Method: Dekorasi method yang ingin Anda jadwalkan dengan @Scheduled. Tentukan cron expression dalam atribut cron:

    @SpringBootApplication
    public class MyApplication {
    
        @Scheduled(cron = "0 0 2 * *")
        public void myScheduledTask() {
            // Kode yang ingin Anda jalankan pada pukul 2 pagi
            System.out.println("Task dijalankan pada pukul 2 pagi!");
        }
    
        public static void main(String[] args) {
            SpringApplication.run(MyApplication.class, args);
        }
    }
    

Contoh Penggunaan:

  • Backup Data: Anda dapat menjadwalkan task untuk melakukan backup data harian pada pukul 2 pagi.
  • Kirim Email: Anda dapat menjadwalkan tugas untuk mengirim email berkala kepada pengguna pada pukul 2 pagi.
  • Pembersihan Data: Anda dapat menjadwalkan task untuk membersihkan data yang sudah usang pada pukul 2 pagi.

Catatan:

  • Untuk mempelajari lebih lanjut tentang cron expression, Anda dapat menggunakan alat online seperti .
  • Anda dapat menggunakan @EnableScheduling di kelas utama aplikasi Anda untuk mengaktifkan scheduler.

Dengan menggunakan @scheduled(cron = "0 0 2 * *") dan cron expression, Anda dapat dengan mudah menjadwalkan tugas rutin dalam aplikasi Spring Boot. Ini memberikan kontrol yang lebih besar atas proses otomatis dalam aplikasi Anda.