


Pembangunan Java: Bagaimana untuk melaksanakan penjadualan tugas teragih dan tugas berjadual
Pembangunan Java: Bagaimana untuk melaksanakan penjadualan tugas teragih dan tugas bermasa
Tinjauan:
Dengan sistem yang tersebar luas penjadualan tugas yang diedarkan dan pelaksanaan tugas yang dijadualkan telah menjadi semakin penting. Dalam pembangunan Java, kita boleh menggunakan beberapa rangka kerja dan alatan untuk melaksanakan penjadualan tugas teragih dan tugas berjadual. Artikel ini akan menumpukan pada cara menggunakan rangka kerja Kuarza dan Spring Boot untuk melaksanakan kedua-dua fungsi ini dan menyediakan contoh kod.
1. Gunakan rangka kerja Kuarza untuk melaksanakan penjadualan tugas
Quartz ialah rangka kerja penjadualan kerja sumber terbuka yang boleh melaksanakan fungsi penjadualan tugas dalam aplikasi Java. Ia menyediakan API yang kaya dan kaedah konfigurasi yang fleksibel.
-
Memperkenalkan tanggungan
Pertama sekali, kami perlu memperkenalkan kebergantungan Kuarza ke dalam projek. Anda boleh menambah kebergantungan berikut dalam fail pom.xml projek:<dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.3.2</version> </dependency>
Salin selepas log masuk Buat kelas Pekerjaan
Seterusnya, kita perlu menentukan kelas Pekerjaan untuk pelaksanaan Khusus logik tugas. Kelas Job perlu melaksanakan antara muka org.quartz.Job dan mengatasi kaedah laksana. Contohnya:public class MyJob implements Job { @Override public void execute(JobExecutionContext context) throws JobExecutionException { // 执行具体的任务逻辑 System.out.println("执行任务..."); } }
Salin selepas log masuk- Buat penjadual dan pencetus
Seterusnya, kita perlu mencipta penjadual dan pencetus untuk menjadualkan masa pelaksanaan tugas. Penjadual bertanggungjawab untuk mengurus hubungan antara tugas dan pencetus, dan pencetus menentukan peraturan masa pelaksanaan tugas.
// 创建调度器 Scheduler scheduler = new StdSchedulerFactory().getScheduler(); // 创建触发器 Trigger trigger = TriggerBuilder.newTrigger() .withIdentity("trigger1", "group1") // 触发器的名称和组名 .startNow() // 立即开始执行 .withSchedule(SimpleScheduleBuilder.simpleSchedule() .withIntervalInSeconds(10) // 定义任务的执行间隔为10秒 .repeatForever()) // 重复执行 .build(); // 创建JobDetail JobDetail jobDetail = JobBuilder.newJob(MyJob.class) .withIdentity("job1", "group1") // Job的名称和组名 .build(); // 将JobDetail和Trigger添加到调度器 scheduler.scheduleJob(jobDetail, trigger); // 启动调度器 scheduler.start();
Kod di atas mencipta penjadual dan pencetus, di mana pencetus mentakrifkan peraturan masa pelaksanaan tugasan dan tugasan akan dilaksanakan berulang kali setiap 10 saat.
2. Gunakan Spring Boot untuk melaksanakan tugas berjadual
Spring Boot ialah rangka kerja yang digunakan untuk memudahkan pembangunan aplikasi Spring. Ia menyediakan cara yang mudah dan pantas untuk mencipta aplikasi Spring gred pengeluaran kendiri.
Memperkenalkan kebergantungan
Pertama sekali, kami perlu memperkenalkan kebergantungan Spring Boot ke dalam projek. Anda boleh menambah kebergantungan berikut dalam fail pom.xml projek:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <version>2.5.4</version> </dependency>
Salin selepas log masuk- Cipta tugas berjadual
Seterusnya, kami boleh menggunakan anotasi Spring Boot @Scheduled untuk mentakrifkan tugas yang dijadualkan. Anotasi @Scheduled boleh digunakan pada kaedah kelas untuk menentukan peraturan masa untuk pelaksanaan kaedah.
import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @Component @EnableScheduling public class MyTask { @Scheduled(cron = "0 0/1 * * * ?") // 每分钟执行一次 public void doTask() { // 执行具体的任务逻辑 System.out.println("执行任务..."); } }
- Mulakan tugas berjadual
Akhirnya, kami perlu menambah anotasi @EnableScheduling ke kelas permulaan Spring Boot untuk memulakan pelaksanaan tugas yang dijadualkan.
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.scheduling.annotation.EnableScheduling; @SpringBootApplication @EnableScheduling public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
Kod di atas mentakrifkan tugas berjadual yang dilaksanakan setiap minit dan membolehkan pelaksanaan tugas yang dijadualkan dalam kelas permulaan.
Ringkasan:
Menggunakan rangka kerja Kuarza, penjadualan tugas teragih boleh dilaksanakan Dengan mencipta penjadual dan pencetus, dan mentakrifkan logik tugasan tertentu, masa pelaksanaan dan peraturan tugasan boleh diuruskan secara fleksibel. Menggunakan anotasi @Scheduled Spring Boot boleh melaksanakan tugas berjadual dengan mudah Anda hanya perlu menambah anotasi pada kaedah dan menentukan peraturan masa pelaksanaan.
Di atas adalah pengenalan kepada cara melaksanakan penjadualan tugas teragih dan tugas berjadual dalam pembangunan Java. Jika anda mempunyai lebih banyak soalan, sila berasa bebas untuk berkomunikasi dan berbincang.
Atas ialah kandungan terperinci Pembangunan Java: Bagaimana untuk melaksanakan penjadualan tugas teragih dan tugas berjadual. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Ringkasan beberapa sebab mengapa tugas berjadual crontab tidak dilaksanakan Masa kemas kini: 9 Januari 2019 09:34:57 Penulis: Harapan di medan ini terutamanya meringkaskan dan memperkenalkan kepada anda beberapa sebab mengapa tugas berjadual crontab tidak dilaksanakan setiap orang Penyelesaian diberikan untuk setiap pencetus yang mungkin, yang mempunyai rujukan dan nilai pembelajaran tertentu untuk rakan sekerja yang menghadapi masalah ini. Pelajar yang memerlukan boleh mengikuti editor untuk belajar bersama-sama: Saya telah menghadapi beberapa masalah di tempat kerja yang dijadualkan tugas tidak dilaksanakan Kemudian, apabila saya mencari di Internet, saya mendapati bahawa Internet terutamanya menyebut lima insentif ini: 1. Perkhidmatan crontab bukan fungsi kernel Linux, tetapi bergantung pada cron.

Terdapat lima arah pekerjaan dalam industri Java, yang manakah sesuai untuk anda? Java, sebagai bahasa pengaturcaraan yang digunakan secara meluas dalam bidang pembangunan perisian, sentiasa popular. Disebabkan sifat merentas platform yang kukuh dan rangka kerja pembangunan yang kaya, pembangun Java mempunyai pelbagai peluang pekerjaan dalam pelbagai industri. Dalam industri Java, terdapat lima arah pekerjaan utama, termasuk pembangunan JavaWeb, pembangunan aplikasi mudah alih, pembangunan data besar, pembangunan terbenam dan pembangunan pengkomputeran awan. Setiap arah mempunyai ciri-ciri dan kelebihannya Lima arah akan dibincangkan di bawah.

Penting untuk pembangun Java: Mengesyorkan alat penyahkompilasi terbaik, contoh kod khusus diperlukan Pengenalan: Semasa proses pembangunan Java, kita sering menghadapi situasi di mana kita perlu menyahkompilasi kelas Java sedia ada. Nyahkompilasi boleh membantu kami memahami dan mempelajari kod orang lain, atau membuat pembaikan dan pengoptimuman. Artikel ini akan mengesyorkan beberapa alat penyahkompilasi Java yang terbaik dan menyediakan beberapa contoh kod khusus untuk membantu pembaca mempelajari dan menggunakan alat ini dengan lebih baik. 1. JD-GUIJD-GUI ialah sumber terbuka yang sangat popular

Sebagai bahasa pengaturcaraan yang sangat popular, Java sentiasa digemari oleh semua orang. Apabila saya mula belajar pembangunan Java, saya pernah menghadapi masalah-bagaimana untuk membina sistem langganan mesej. Dalam artikel ini, saya akan berkongsi pengalaman saya dalam membina sistem langganan mesej dari awal, dengan harapan dapat membantu pemula Java yang lain. Langkah 1: Pilih baris gilir mesej yang sesuai Untuk membina sistem langganan mesej, anda perlu memilih baris gilir mesej yang sesuai. Barisan mesej yang lebih popular pada masa ini di pasaran termasuk ActiveMQ,

Tajuk: Pelaksanaan tugas berjadual PHP: Langkah operasi untuk membatalkan pesanan setiap 10 minit Dalam platform e-dagang atau tapak web dagangan dalam talian, pemprosesan pesanan ialah pautan penting. Kadangkala pengguna mungkin tidak membayar untuk masa yang lama selepas membuat pesanan, atau pesanan itu perlu dibatalkan atas sebab lain. Untuk membatalkan pesanan secara automatik, kami boleh menggunakan tugas berjadual PHP untuk menyemak pesanan dan membatalkannya setiap 10 minit. Berikut ialah langkah operasi dan contoh kod khusus: Langkah 1: Sediakan tugas berjadual Pertama, kita perlu menyediakan tugas berjadual pada pelayan untuk membiarkan

Dengan perkembangan teknologi IoT, semakin banyak peranti dapat menyambung ke Internet dan berkomunikasi serta berinteraksi melalui Internet. Dalam pembangunan aplikasi IoT, Protokol Pengangkutan Telemetri Beratur Mesej (MQTT) digunakan secara meluas sebagai protokol komunikasi ringan. Artikel ini akan memperkenalkan cara menggunakan pengalaman praktikal pembangunan Java untuk melaksanakan fungsi IoT melalui MQTT. 1. Apakah MQT? QTT ialah protokol penghantaran mesej berdasarkan model terbitkan/langgan. Ia mempunyai reka bentuk yang ringkas dan overhed yang rendah, dan sesuai untuk senario aplikasi yang menghantar sejumlah kecil data dengan cepat.

Pengalaman praktikal dalam pembangunan Java: Menggunakan tugas berjadual untuk melaksanakan fungsi penjadualan Ringkasan: Dalam pembangunan Java, tugas berjadual adalah kaedah biasa untuk melaksanakan fungsi penjadualan. Artikel ini akan memperkenalkan cara menggunakan tugas berjadual dalam Java untuk melaksanakan fungsi penjadualan, dan berkongsi beberapa pengalaman pembangunan dan langkah berjaga-jaga. 1. Apakah tugas berjadual? Tugas berjadual merujuk kepada melaksanakan tugas pada masa tertentu atau secara berkala melaksanakan tugas mengikut selang masa tertentu. Di Java, kita boleh menggunakan kelas Pemasa atau Jadual yang disediakan oleh perpustakaan standard Java

Kemahiran pembangunan Java didedahkan: Melaksanakan fungsi penyulitan dan penyahsulitan data Dalam era maklumat semasa, keselamatan data telah menjadi isu yang sangat penting. Untuk melindungi keselamatan data sensitif, banyak aplikasi menggunakan algoritma penyulitan untuk menyulitkan data. Sebagai bahasa pengaturcaraan yang sangat popular, Java juga menyediakan perpustakaan yang kaya dengan teknologi dan alatan penyulitan. Artikel ini akan mendedahkan beberapa teknik untuk melaksanakan fungsi penyulitan dan penyahsulitan data dalam pembangunan Java untuk membantu pembangun melindungi keselamatan data dengan lebih baik. 1. Pemilihan algoritma penyulitan data Java menyokong banyak
