1. Transaksi pengisytiharan
Gunakan kaedah AOP (berorientasikan aspek) untuk membuka transaksi menggunakan kaedah transaksi terprogram sebelum kaedah, dan serahkan atau serahkan selepas kaedah rollback. Gunakan kaedah fail konfigurasi atau kaedah anotasi (seperti @Transactional) untuk mengawal transaksi.
Anotasi pada kaedah ialah kaedah memulakan transaksi secara automatik, dan pada kelas ia adalah kaedah dalam keseluruhan kelas yang menggunakan transaksi
2. Kaedah
1. Pengurusan transaksi Deklaratif berdasarkan TransactionProxyFactoryBean
dikonfigurasikan dalam applicationContext.xml
dan kemudian apabila diperlukan Lapisan perkhidmatan untuk pengurusan transaksi menyuntik kelas proksi accountrviceProxy
@Resource(name="accountrviceProxy")
Kaedah ini mempunyai kelemahan, iaitu, kita perlu memadankan setiap kelas perkhidmatan yang memerlukan pengurusan transaksi dengan proksinya kelas, yang agak mudah untuk dikonfigurasikan.
2. Pengurusan transaksi Deklaratif berdasarkan AspectJ XML
Terdapat ungkapan semasa mengkonfigurasi titik masuk:
expression="execution(* com.cn.study.spring.service.IAccountService+.*(..))"
pelaksanaan dalam kurungan Parameter dalam giliran mewakili jenis pulangan kaedah, nama pakej, nama kelas, nama kaedah dan parameter kaedah
dengan * mewakili mana-mana
IAccountService+ mewakili kaedah semua kelas pelaksanaan antara muka IAccountService
Kaedah ini adalah antara yang paling biasa digunakan.
3. Pengurusan urus niaga perisytiharan berasaskan anotasi
Cara ketiga ialah yang paling mudah Kami hanya perlu mengkonfigurasi pemacu untuk mendayakan transaksi anotasi dalam applicationContext.xml, dan kemudian Tambah anotasi sebelum kelas yang memerlukan pengurusan transaksi:
@Transactional(propagation=Propagation.REQUIRED)
Atas ialah kandungan terperinci Apakah kaedah transaksi deklaratif dalam java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!