مشخصات مقاله
-
934
-
0.0
-
2698
-
0
-
0
درس نوزدهم : آموزش آدرس دهی مجموعه ها (Collection) در Hibernate
آموزش آدرس دهی مجموعه ها (Collection) در Hibernate
آموزش آدرس دهی مجموعه ها (Collection) در Hibernate شما می توانید عناصر مجموعه ای (Collection Elements) موجود در کلاس اصلی Persistent Class را در Hibernate آدرس دهی (mapping) کنید.
برای این منظور، بایستی نوع داده ای مجموعه را در کلاس Persistent Class، از یکی از انواع زیر تعیین کنید :
- java.util.List
- java.util.Set
- java.util.SortedSet
- java.util.Map
- java.util.SortedMap
- vjava.util.Collection
- org.hibernate.usertype.UserCollectionType
کلاس اصلی و خام برنامه (Persistent Class) بایستی به صورت زیر برای عنصر مجموعه ای تعریف شود :
package com.javatpoint;
import java.util.List;
public class Question {
private int id;
private String qname;
private List answers;//List can be of any type
//getters and setters
}
آموزش روش آدرس دهی مجموعه در فایل mapping :
عنصرهای زیادی در المنت
در کد فوق 3 عنصر به کار رفته اند که عبارتند از : در کد زیر ، آدرس دهی mapping در صورتی که کلاس اشیای متنی (String objects) را نگهداری کند، تعیین شده است اما اگر مجموعه رفرنس موجودیت ها را نگهداری می کند (برای مثال اشیای یک کلاس دیگر)، بایستی المنت های و را در کد تعیین کنیم. در نهایت کد کلاس Persistent Class به صورت زیر خواهد شد : همچنین فایل آدرس دهی mapping نیز به صورت زیر می باشد : در کد فوق، List با روش ارتباط one-to-many (یک به چند) آدرس دهی شده است. در این روش، ممکن است جواب های مختلفی برای یک سوال وجود داشته باشد. عنصر key برای تعیین کلید خارجی Foreign key در جدول های متصل به هم بر مبنای شناسه اصلی به کار می رود. عنصر Foreign key به صورت پیش فرض nullable است. بنابراین برای کلیدهای خارجی غیر nullable، بایستی خاصیت not-null را به صورت زیر تعیین کنیم : خواص مهم عنصر key مقادیر column، an-delete، Unique، Update، not-null و Property-ref هستند که به صورت نمونه می توان آن ها را همانند کد زیر تعریف نمود : به طور کلی، مجموعه ها به دو دسته تقسیم می شوند : برای مثال مجموعه های List و Map از نوع indexed و مجموعه های bag و set از نوع non-indexed هستند.
المنت های مجموعه ای می توانند شامل مقادیر (Value) و یا رفرس موجودیت ها (اشیای یک کلاس دیگر) شوند. به طور کلی، ما 4 نوع مجموعه داریم : المنت های Component-element و element برای مقادیر معمولی مثل String یا int به کار می روند اما المنت های one-to-many و many-to-many برای آدرس دهی و فرض موجودیت ها (entity refrence) به کار می روند.،
در کد زیر نحوه آدرس دهی Persistent Class را به وسیله المنت های فوق نشان داده ایم :
package com.javatpoint;
import java.util.List;
public class Question {
private int id;
private String qname;
private List answers;//Here, List stores the objects of Answer class
//getters and setters
}
package com.javatpoint;
import java.util.List;
public class Answer {
private int id;
private String answer;
private String posterName;
//getters and setters
}
فهمیدن عنصر key :
مجموعه های ایندکس شده یا indexed collections :
در اینجا، مجموعه های indexed به معنای آن است که در مجموعه بایستی یک المنت اضافه به نام
المنت های مجموعه ای یا Collection Elements :
در درس های بعدی، به بررسی کار با المنت های List، Bag و Set خواهیم پرداخت.