Rumah > Java > javaTutorial > Bagaimana untuk Menyelesaikan Ralat 'Rujukan Objek Tidak Disimpan Contoh Sementara' Hibernate?

Bagaimana untuk Menyelesaikan Ralat 'Rujukan Objek Tidak Disimpan Contoh Sementara' Hibernate?

Barbara Streisand
Lepaskan: 2024-12-18 01:36:13
asal
786 orang telah melayarinya

How to Resolve Hibernate's

Menyelesaikan Ralat "Rujukan Objek Tidak Disimpan Contoh Sementara" Hibernate

Apabila cuba menyimpan objek menggunakan Hibernate, anda mungkin menghadapi ralat berikut:

object references an unsaved transient instance - save the transient instance before flushing
Salin selepas log masuk

Memahami Ralat

Ralat ini menunjukkan bahawa anda mempunyai koleksi dalam entiti anda yang mengandungi satu atau lebih item yang tidak terdapat dalam pangkalan data. Hibernate memerlukan semua entiti yang dirujuk oleh entiti lain sama ada disimpan (berterusan) dalam pangkalan data atau ditandakan sebagai sementara.

Resolusi

Penyelesaian kepada ralat ini adalah untuk menentukan pilihan lata untuk pemetaan koleksi anda. Anda boleh melakukan ini sama ada menggunakan XML atau anotasi:

XML:

<collection name="collectionName" cascade="all">
    ...
</collection>
Salin selepas log masuk

Anotasi:

@OneToMany(cascade = CascadeType.ALL)
private List<ChildEntity> collectionName;
Salin selepas log masuk

Penjelasan

Dengan menyatakan pilihan cascade="all" atau CascadeType.ALL, anda mengarahkan Hibernate untuk menyimpan semua entiti dalam koleksi ke pangkalan data apabila menyimpan entiti induk. Ini memastikan bahawa semua entiti yang dirujuk kekal dalam pangkalan data dan menyelesaikan ralat.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat 'Rujukan Objek Tidak Disimpan Contoh Sementara' Hibernate?. 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