Memahami "Sisi Pemilikan" dalam Pemetaan ORM
Dalam bidang Pemetaan Perhubungan Objek (ORM), hubungan dua hala antara entiti boleh menimbulkan cabaran kerana sifat satu arah pangkalan data hubungan. Untuk menangani perkara ini, ORM memperkenalkan konsep "pihak pemilikan", yang berfungsi untuk menyelaraskan kegigihan data dan mengekalkan integriti rujukan.
Definisi Bahagian Pemilikan
Dalam Pemetaan ORM, pihak pemilik merujuk kepada entiti yang menguruskan hubungan kunci asing dalam pangkalan data. Iaitu, pihak pemilik bertanggungjawab untuk menjejak dan mengekalkan perubahan kepada kunci asing dalam jadual yang berkaitan.
Penjelasan dengan Contoh Pemetaan
Pertimbangkan pemetaan berikut senario:
Satu-ke-Ramai: Dalam perhubungan satu-dengan-banyak, pihak pemilik biasanya mengandungi koleksi entiti berkaitan. Contohnya, dalam pemetaan antara entiti Orang dan koleksi entiti IdDocument, entiti Orang akan dianggap sebagai pihak yang memiliki.
@Entity public class Person { @OneToMany(mappedBy="person") private List<IdDocument> idDocuments; } @Entity public class IdDocument { @ManyToOne private Person person; }
Satu-dengan-Satu : Sama seperti perhubungan satu-dengan-banyak, dalam pemetaan satu-dengan-satu, bahagian pemilikan biasanya mengandungi rujukan kepada entiti berkaitan. Dalam kes ini, memandangkan perhubungan itu unik, sama ada entiti boleh ditetapkan sebagai pihak pemilik.
@Entity public class Person { @OneToOne(mappedBy="person") private IdDocument idDocument; } @Entity public class IdDocument { @OneToOne private Person person; }
Many-to-One: Dalam banyak -kepada-satu pemetaan, pihak pemilik biasanya mengandungi kunci asing kepada entiti yang berkaitan. Pertimbangkan pemetaan antara koleksi entiti Pelajar dan entiti Sekolah. Entiti Pelajar akan menjadi pihak yang memiliki, yang mengandungi rujukan kepada entiti Sekolah.
@Entity public class Student { @ManyToOne private School school; } @Entity public class School { @OneToMany(mappedBy="school") private List<Student> students; }
Akibat Pemetaan Tanpa Sebelahan
Jika pihak pemilik tidak diisytiharkan secara eksplisit dalam hubungan dua hala, Hibernate akan mencipta jadual persatuan ketiga untuk memudahkan pemetaan. Ini boleh membawa kepada percambahan jadual yang tidak diperlukan dan boleh menjejaskan prestasi pangkalan data.
Kesimpulan
Memahami konsep pihak pemilikan adalah penting untuk pemetaan ORM yang berkesan. Dengan menetapkan pihak pemilik dengan betul, pembangun boleh memastikan ketekunan data yang cekap dan mengelakkan potensi isu integriti data.
Atas ialah kandungan terperinci Apakah \'Sisi Pemilikan\' dalam Perhubungan Dwi Arah ORM dan Mengapakah Ia Penting?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!