روش singe class در هایبرنت با استفاده از xml چگونه انجام می شود؟
- فرشته حقیقی 4 سال قبل سوال کرد
- آخرین ویرایش 4 سال قبل
- شما باید برای ارسال دیدگاه وارد شوید
در این روش برای همه ی زیرکلاسها و همچنین کلاس پدر فقط یک جدول ایجاد می شود.در این جدول یک ستون به نام discriminator column برای تشخیص اینکه هر رکورد به کدام کلاس تعلق دارد توسط هایبرنت ایجاد می شود.
فرض کنیم کلاسهای زیر را داریم:
public class Employee {
private int id;
private String name;
//getters and setters
}
public class RegularEmployee extends Employee{
private float salary;
private int bonus;
//getters and setters
}
public class ContractEmployee extends Employee{
private float pay_per_hour;
private String contract_duration;
//getters and setters
}
روش single class با استفاده از xml بصورت زیر می شود:
<hibernate-mapping>
<class name="Employee" table="EMPLOYEES" discriminator-value="emp">
<id name="id">
<generator class="increment"></generator>
</id>
<discriminator column="type" type="string"></discriminator>
<property name="name"></property>
<subclass name="RegularEmployee" discriminator-value="reg_emp">
<property name="salary"></property>
<property name="bonus"></property>
</subclass>
<subclass name="ContractEmployee" discriminator-value="con_emp">
<property name="pay_per_hour"></property>
<property name="contract_duration"></property>
</subclass>
</class>
</hibernate-mapping>
- فرشته حقیقی 4 سال قبل پاسخ داد
- شما باید برای ارسال دیدگاه وارد شوید