#java #hibernate #jpa
Вопрос:
Я разрабатываю такую модель сущности, как эта :
@Entity(name = "EntityDamage")
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public abstract class EntityDamage {
@Id
private long damage_id;
@OneToMany(fetch = FetchType.LAZY, mappedBy = "entityDamage")
private Set<JTBDamageComment> JTB_Damage_Comment;
}
@Entity(name = "EntityCarDamage")
@Table(name = "EntityCarDamage", schema = "dbo", catalog = "InsuranceDamageDB")
public class EntityCarDamage extends EntityDamage {
}
@Entity(name = "EntityComment")
@Table(name = "EntityComment", schema = "dbo", catalog = "InsuranceDamageDB")
public class EntityComment {
@Id
@Column(name = "comment_id", nullable = false, precision = 0)
private long comment_id;
}
@Entity(name = "JTBDamageComment")
@Table(name = "JTBDamageComment", schema = "dbo", catalog = "InsuranceDamageDB")
public class JTBDamageComment {
@EmbeddedId
private KeyDamageComment id = new KeyDamageComment();
@ManyToOne
@MapsId("damage_id")
@JoinColumn(name = "damage_id")
private EntityDamage entityDamage;
@ManyToOne
@MapsId("comment_id")
@JoinColumn(name = "comment_id")
private EntityComment entityComment;
}
На диаграмме сущностей все в порядке , но EntityComment не имеет отношения к EntityCarDamagee на уровне базы данных , потому что EntityDamage является абстрактным классом. мой вопрос : я изменяю свое отношение «переместить отношение к сущности» или существует другой способ?