@Entity
@Table(name = " T_BASE " )
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name = " CATEGORY " , discriminatorType = DiscriminatorType.STRING)
public class BaseDomain ... {
}
@Entity
@DiscriminatorValue( " sub1 " )
public class SubDomain1 extends BaseDomain ... {
}
@Entity
@SecondaryTable(name = " T_SUB2 " )
@DiscriminatorValue( " sub2 " )
public class SubDomain2 extends BaseDomain ... {
private String ext;
@Column(table = "T_SUB2", name = "EXT2")
public String getExt() ...{
return ext;
}
public void setExt(String ext) ...{
this.ext = ext;
}
}
@Table(name = " T_BASE " )
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name = " CATEGORY " , discriminatorType = DiscriminatorType.STRING)
public class BaseDomain ... {
}
@Entity
@DiscriminatorValue( " sub1 " )
public class SubDomain1 extends BaseDomain ... {
}
@Entity
@SecondaryTable(name = " T_SUB2 " )
@DiscriminatorValue( " sub2 " )
public class SubDomain2 extends BaseDomain ... {
private String ext;
@Column(table = "T_SUB2", name = "EXT2")
public String getExt() ...{
return ext;
}
public void setExt(String ext) ...{
this.ext = ext;
}
}