Spring Boot

Transaksi Spring

Manajemen transaksi dengan @Transactional, propagation, isolation, rollback, PlatformTransactionManager

30 pertanyaan wawancaraยท
Senior
1

Apa peran utama anotasi @Transactional di Spring?

Jawaban

@Transactional menunjukkan bahwa sebuah metode harus dieksekusi dalam konteks transaksional, memastikan atomisitas operasi basis data. Spring secara otomatis membuat AOP proxy di sekitar kelas untuk menangani awal, commit, dan rollback transaksi. Pendekatan deklaratif ini sangat menyederhanakan manajemen transaksi dibandingkan dengan pemrograman manual menggunakan TransactionTemplate atau PlatformTransactionManager.

2

Apa tipe propagation default untuk @Transactional?

Jawaban

Propagation.REQUIRED adalah tipe propagation default. Dengan strategi ini, Spring akan bergabung dengan transaksi yang sudah ada jika ada, atau membuat yang baru jika tidak. Ini adalah perilaku yang paling umum dan intuitif untuk sebagian besar kasus penggunaan, memastikan bahwa transaksi selalu ada untuk operasi basis data.

3

Apa yang terjadi jika RuntimeException dilemparkan dalam metode @Transactional?

Jawaban

Secara default, Spring secara otomatis melakukan rollback transaksi ketika RuntimeException (atau Error) dilemparkan. Ini memastikan modifikasi basis data dibatalkan jika terjadi kesalahan yang tidak terduga. Sebaliknya, checked exception (yang mewarisi Exception tetapi bukan RuntimeException) tidak memicu rollback secara default, kecuali ditentukan secara eksplisit dengan rollbackFor.

4

Di mana anotasi @Transactional dapat diterapkan?

5

Perilaku apa yang diadopsi oleh Propagation.REQUIRES_NEW?

+27 pertanyaan wawancara

Kuasai Spring Boot untuk wawancara berikutnya

Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.

Mulai gratis