Rumah > Java > javaTutorial > Bagaimana untuk menyelesaikan masalah pengesahan label transaksi dalam projek springboot

Bagaimana untuk menyelesaikan masalah pengesahan label transaksi dalam projek springboot

WBOY
Lepaskan: 2023-05-10 23:28:12
ke hadapan
969 orang telah melayarinya

1. Penerangan masalah

Mengkonfigurasi transaksi dalam projek springboot telah digunakan melalui teg sebelum ini, kerana ia digunakan dalam kod orang lain, nampaknya ia tidak berfungsi (dan kerana jaminan rangka kerja, jangan risau), ia digunakan sekali lagi dalam projek permulaan baharu, dan selepas pengesahan, sudah cukup untuk mengkonfigurasi dua tag di bawah projek springboot.

2. Penyelesaian

2.1 Penerangan

(1) Sebenarnya terdapat dua teg, satu digunakan dalam kelas permulaan (@EnableTransactionManagement), dan satu lagi di mana diperlukan Di mana untuk mengkonfigurasi (@Transactional); skema

(2), saya baru sahaja menemui projek ujian sebelumnya Satu kaedah termasuk: menyimpan sekeping data ke pangkalan data dan 1 dibahagikan dengan 0 kod, dan kemudian lihat Apakah perbezaan antara menambah dan tidak menambah teg transaksi;

2.2 Penerangan Kod

(1) kelas pengawal

@ResponseBody
    @GetMapping("/tstest")
    public String tstest() {
        this.userService.tstest();
        return "SUCCESS";
    }
Salin selepas log masuk

(2) kelas perkhidmatan

public void tstest() {
        //保存
        UserEntity userEntity = new UserEntity();
        userEntity.setType(0);
        userEntity.setOpenid("1111");
        insert(userEntity);
	
				//报错,回滚
        int i = 1/0;
        System.out.println(i);
    }
Salin selepas log masuk

2.3 Pengesahan 1, tiada transaksi

tidak menambah tag transaksi, kod adalah seperti di atas.

(1) Kosongkan pangkalan data dahulu;

(2) Laksanakan permintaan tstest; baris dilaksanakan, data Disimpan ke pangkalan data.

Bagaimana untuk menyelesaikan masalah pengesahan label transaksi dalam projek springboot

Kemudian pelaksanaan selesai (1/0 Walaupun kod ralat melaporkan ralat, data dalam pangkalan data masih wujud tidak diselenggara.

Bagaimana untuk menyelesaikan masalah pengesahan label transaksi dalam projek springboot

2.4 Pengesahan 2, terdapat transaksi

(1) Tambah dua label, satu pada kaedah kelas permulaan dan satu pada kaedah tstest. Bagaimana untuk menyelesaikan masalah pengesahan label transaksi dalam projek springboot


Bagaimana untuk menyelesaikan masalah pengesahan label transaksi dalam projek springboot (2) Mula-mula kosongkan data dan laksanakan untuk memasukkan

Bagaimana untuk menyelesaikan masalah pengesahan label transaksi dalam projek springboot


Saya mendapati bahawa walaupun baris kod sisipan telah dilaksanakan, tiada data dalam pangkalan data pada masa ini Selepas pelaksanaan selesai, kod melaporkan ralat, data telah digulung semula dan data itu tidak disimpan dalam pangkalan data, menunjukkan bahawa transaksi telah mencapai penghujung yang sepatutnya.

Bagaimana untuk menyelesaikan masalah pengesahan label transaksi dalam projek springboot

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah pengesahan label transaksi dalam projek springboot. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan