Kerja dan Langkah Spring Batch
Susun pemprosesan kelompok mengikut langkah.
Kerja dan Langkah Spring Batch ialah pelajaran Perkhidmatan Mikro dan API REST Spring Boot 4 percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Perkhidmatan Mikro dan API REST Spring Boot 4, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Perkhidmatan Mikro dan API REST Spring Boot 4 merangkumi sejumlah 4 pelajaran.
Apakah Spring Batch?
Spring Batch ialah rangka kerja untuk pemprosesan kelompok yang teguh dan bervolume besar: membaca, mengubah dan menulis data secara pukal dengan pengurusan transaksi, pemprosesan cebisan dan keupayaan dimulakan semula terbina dalam.
- Kerja ETL, pemindahan dan laporan malam
- Mengendalikan jutaan rekod dengan boleh dipercayai
Menambah kebergantungan
Tambahkan spring-boot-starter-batch. Spring Batch memerlukan sumber data untuk menyimpan metadatanya, iaitu sejarah pelaksanaan kerja dan langkah.
<!-- Maven -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-batch</artifactId>
</dependency>Konsep teras: Job dan Step
Job ialah keseluruhan proses kelompok. Ia terdiri daripada satu atau lebih Step yang dilaksanakan mengikut turutan. Setiap Step menjalankan satu fasa kerja.
Job= unit keseluruhanStep= satu fasa (baca-proses-tulis atau tasklet)
JobRepository dan metadata
JobRepository mengekalkan keadaan pelaksanaan dalam jadual pangkalan data (BATCH_JOB_EXECUTION, BATCH_STEP_EXECUTION...). Inilah yang membolehkan pelaksanaan semula dan menghalang tika kerja yang telah selesai daripada dijalankan semula.
Mentakrifkan Job dengan JobBuilder
Gunakan JobBuilder untuk memasang sesuatu kerja. Berikan nama, JobRepository dan langkah permulaan kepadanya.
@Bean
public Job importJob(JobRepository repo, Step step1) {
return new JobBuilder("importJob", repo)
.start(step1)
.build();
}Mentakrifkan Step dengan StepBuilder
StepBuilder membina satu langkah. Langkah berasaskan cebisan mengisytiharkan jenis input/output, saiz cebisan serta pembaca, pemproses dan penulis.
@Bean
public Step step1(JobRepository repo,
PlatformTransactionManager tx,
ItemReader<String> reader,
ItemWriter<String> writer) {
return new StepBuilder("step1", repo)
.<String, String>chunk(10, tx)
.reader(reader)
.writer(writer)
.build();
}Pemprosesan berasaskan cebisan
Pemprosesan cebisan membaca item satu demi satu, mengumpulkannya sehingga mencapai saiz cebisan, kemudian menulis keseluruhan cebisan dalam satu transaksi. Jika cebisan gagal, semuanya akan dibuat asal bersama-sama.
- baca 10 item -> proses setiap satu -> tulis 10 -> lakukan komit
Langkah tasklet
Untuk satu unit kerja, seperti memadam fail atau menjalankan prosedur tersimpan, gunakan langkah Tasklet dan bukannya pembaca/penulis.
@Bean
public Step cleanupStep(JobRepository repo, PlatformTransactionManager tx) {
return new StepBuilder("cleanup", repo)
.tasklet((contribution, context) -> {
deleteTempFiles();
return RepeatStatus.FINISHED;
}, tx)
.build();
}Merangkai beberapa langkah
Jalankan langkah mengikut turutan dengan .next(). Kerja hanya beralih ke langkah seterusnya jika langkah sebelumnya berjaya.
@Bean
public Job pipeline(JobRepository repo, Step extract, Step transform, Step load) {
return new JobBuilder("etl", repo)
.start(extract)
.next(transform)
.next(load)
.build();
}JobParameters
JobInstance dikenal pasti melalui namanya bersama JobParameters. Parameter yang berbeza, contohnya tarikh, menghasilkan tika yang berbeza. Dengan cara inilah anda menjalankan semula kerja untuk hari baharu.
JobParameters params = new JobParametersBuilder()
.addString("runDate", "2026-05-30")
.toJobParameters();
jobLauncher.run(importJob, params);Melancarkan kerja dalam Spring Boot
Secara lalai, Spring Boot menjalankan semua kerja yang ditakrifkan semasa permulaan. Matikannya dengan spring.batch.job.enabled=false dan lancarkan secara manual melalui JobLauncher apabila anda memerlukan kawalan, contohnya mengikut jadual.
Semakan Pantas
Semak pemahaman anda tentang struktur Job dan Step.
Ringkasan
Kini anda memahami model kelompok:
JobmengandungiStepyang tersusunJobBuilder/StepBuildermemasangnya- Langkah cebisan membaca-memproses-menulis dalam transaksi; langkah tasklet melaksanakan satu unit
JobParametersmengenal pastiJobInstancedan membolehkan pelaksanaan semula
Pelajari Java dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 24
- Pelajaran
- 93
Soalan Lazim
Adakah pelajaran “Kerja dan Langkah Spring Batch” percuma?
Ya — teks penuh “Kerja dan Langkah Spring Batch” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Perkhidmatan Mikro dan API REST Spring Boot 4, tingkat taraf kepada CoddyKit PRO. Kursus Perkhidmatan Mikro dan API REST Spring Boot 4 merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Kerja dan Langkah Spring Batch”?
Susun pemprosesan kelompok mengikut langkah. Anda berlatih Perkhidmatan Mikro dan API REST Spring Boot 4 menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Perkhidmatan Mikro dan API REST Spring Boot 4?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Perkhidmatan Mikro dan API REST Spring Boot 4 di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.
Berapa lamakah pelajaran “Kerja dan Langkah Spring Batch” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Perkhidmatan Mikro dan API REST Spring Boot 4 ini?
Ya. Setiap pelajaran Perkhidmatan Mikro dan API REST Spring Boot 4 menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Penjadualan dengan @Scheduled
- Kerja dan Langkah Spring Batch
- Pembaca, Pemproses dan Penulis
- Pemulaan Semula dan Pengendalian Ralat