0
我想用eclipse鏈接歷史鏡像以下的類與繼承類型使用的EclipseLink歷史政策加入
@Entity
@Table(name="EMPLOYEE")
@Inheritance(strategy= InheritanceType.JOINED)
@TableGenerator(name="Employee_Gen", table="ID_GEN", pkColumnName="GEN_NAME", valueColumnName="GEN_VAL", pkColumnValue="Employee_Gen")
@Customizer(EmployeeCustomizer.class)
public class Employee implements Serializable {
}
@Entity
@Table(name="COMMESSIONEMPLOYEE")
public class CommesionEmployee extends Employee {
}
在我的歷史記錄表是
@Entity
@Table(name="EMPLOYEE_HISTORY")
@IdClass(EmployeeHistoryId.class)
@Inheritance(strategy= InheritanceType.JOINED)
public class EmployeeHistory implements Serializable {
}
@Entity
@Table(name="COMMISSIONEMPLOYEE_HISTORY")
public class CommesionEmployeeHistory extends EmployeeHistory {
}
和定製類是
public class EmployeeCustomizer implements DescriptorCustomizer {
@Override
public void customize(ClassDescriptor cd) throws Exception {
HistoryPolicy policy = new HistoryPolicy();
policy.addStartFieldName("MJSTART");
policy.addEndFieldName("EMPLOYEE.MJEND");
//policy.addEndFieldName("COMMISSIONEMPLOYEE.CEEND");
policy.addHistoryTableName("EMPLOYEE","EMPLOYEE_HISTORY");
//policy.addHistoryTableName("COMMISSIONEMPLOYEE","COMMISSIONEMPLOYEE_HISTORY");
policy.setShouldHandleWrites(true);
cd.setHistoryPolicy(policy);
}
}
當前沒有任何內容正在寫入COMMESSIONEMPLOYEE_HISTORY表。我在這裏做錯了什麼?
P,S>如果我使用單個表繼承EmployeeHistory類,則不會將任何內容寫入子類ComessionEmployeeHistorry的屬性中。