Rumah > Java > javaTutorial > teks badan

Bagaimana Mengendalikan Nod Yatim dalam JPA dengan CascadeType.ALL?

Susan Sarandon
Lepaskan: 2024-11-01 01:17:02
asal
649 orang telah melayarinya

How to Handle Orphaned Nodes in JPA with CascadeType.ALL?

Nod Yatim dalam JPA dengan CascadeType.ALL

Walaupun menggunakan CascadeType.ALL JPA, nod yatim tetap ada dalam pangkalan data, menghalang pemadaman. Untuk menyelesaikan isu ini, terdapat beberapa pendekatan bergantung pada penyedia kegigihan dan versi JPA:

Konfigurasi Hibernate

Jika menggunakan Hibernate, tentukan secara eksplisit anotasi CascadeType.DELETE_ORPHAN dalam sempena JPA CascadeType.ALL:

@OneToMany(cascade = {CascadeType.ALL, CascadeType.DELETE_ORPHAN})
private List<Bikes> bikes;
Salin selepas log masuk

Penyelesaian JPA (tanpa Hibernate)

Jika tiada Hibernate, padamkan elemen anak secara eksplisit sebelum mengalih keluar rekod induk:

  1. Ambil baris utama untuk menjadi dipadamkan.
  2. Ambil elemen kanak-kanak.
  3. Padamkan semua elemen kanak-kanak.
  4. Padamkan baris utama.
  5. Tutup sesi.

JPA 2.0

JPA 2.0 memperkenalkan atribut orphanRemoval:

@OneToMany(mappedBy="foo", orphanRemoval=true)
Salin selepas log masuk

Dengan menetapkan orphanRemoval kepada benar, JPA akan memadam rekod anak yatim piatu secara automatik apabila entiti induk dialih keluar.

Atas ialah kandungan terperinci Bagaimana Mengendalikan Nod Yatim dalam JPA dengan CascadeType.ALL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!