2013-04-03 46 views
0

我想映射許多子類與一個共同的父類:B擴展A,C擴展A,...但數據庫不關心A和B和C沒有什麼常見(沒有標識,沒有參考...)。休眠映射子類忽略父項

public class A { 
    @Id 
    @Column(name="id") 
    private Long id; 

    @Column(name="reference", nullable=false) 
    private String reference; 

} 

是否可以在不添加@Entity的情況下做到這一點?

液對A

@MappedSuperclass 
public class A { 
    @Id 
    @Column(name="id") 
    private Long id; 

    @Column(name="reference", nullable=false) 
    private String reference; 

} 

@Entity 
@Table(name="B") 
public class B extends A { 
} 
+0

你試過嗎? –

回答

1

使用@MappedSuperclass

指定一個類,其映射信息被應用到繼承它的實體。映射的超類沒有爲其定義單獨的表。

+0

就是這樣,非常感謝! – user1143877