2013-08-17 45 views
14

我有一個遺留數據庫域,我無法更改,但有可能構想一個域實體來解決我的問題。可以使用JPA將多個​​表映射爲單個實體嗎?

遺留表:TABLE1(ID,VALUE)TABLE2(ID,DATE)表3(ID,說明)

域:NewConceptDomain {int值;日期日期;字符串描述; }

如何使用JPA映射新的NewConceptDomain?

回答

26

使用@SecondaryTablehttp://en.wikibooks.org/wiki/Java_Persistence/Tables#Multiple_tables

@Entity 
@Table(name="TABLE1") 
@SecondaryTables({ 
    @SecondaryTable(name="TABLE2", 
    pkJoinColumns = @PrimaryKeyJoinColumn(name="ID", referencedColumnName="ID") 
), 
    @SecondaryTable(name="TABLE3", 
    pkJoinColumns = @PrimaryKeyJoinColumn(name="ID", referencedColumnName="ID") 
)} 
)