Saat Anda memanggil metode tanpa @Transactional
dalam blok transaksi, transaksi induk akan melanjutkan ke metode baru. Ini akan menggunakan koneksi yang sama dari metode induk (dengan @Transactional
) dan pengecualian apa pun yang disebabkan dalam metode yang dipanggil (tanpa @Transactional
akan menyebabkan transaksi dibatalkan seperti yang dikonfigurasi dalam definisi transaksi.
Jika Anda memanggil metode dengan @Transactional
anotasi dari metode dengan @Transactional
instance yang sama, maka perilaku transaksional metode yang disebut tidak akan berdampak apa pun pada transaksi. Tetapi jika Anda memanggil metode dengan definisi transaksi dari metode lain dengan definisi transaksi, dan mereka berada dalam contoh yang berbeda, maka kode dalam metode yang dipanggil akan mengikuti definisi transaksi yang diberikan dalam metode yang dipanggil.
Anda dapat menemukan detail selengkapnya di bagian Manajemen transaksi deklaratif dari dokumentasi transaksi musim semi .
Model transaksi deklaratif pegas menggunakan proxy AOP. jadi proxy AOP bertanggung jawab atas pembuatan transaksi. Proksi AOP akan aktif hanya jika metode dengan dalam contoh dipanggil dari luar contoh.