2016-03-31 17 views
0

私はすべての私のエンティティの基本エンティティクラスを使用します。すべてのエンティティが共有する列を含むテーブルにマップされます。JPAエンティティID列を上書きする方法は?

@Entity 
@Inheritance(strategy=InheritanceType.JOINED) 
@DiscriminatorColumn(name="entpcd", discriminatorType=DiscriminatorType.STRING) 
@Table(name="enrg") 
public abstract class BaseEntity 

@Id 
@Column(name="enid") 
private String entityId=null; 

私は独自のテーブルにマップされたPersonを表すエンティティクラスを持っています。

@Entity 
@DiscriminatorValue("PN") 
@Table(name="pn") 
public class Person extends BaseEntity 

ENRGテーブル構造

enid, col2, col3 

PNテーブル構造

pnid, col2 col3 

人を取得しているとき、Hibernateはenrg.enid=pn.enidに参加をやろうとして失敗しました。 Hibernateがenrg.enid=pn.pnidに参加するようにPersonのidマッピングをオーバーライドするにはどうすればよいですか?

答えて

関連する問題