2011-11-04 94 views
0

如果我有一個實體,如下列:使用實體字段可以持久化JPA實體嗎?

@Entity 
public class Customer { 
    private Address address; 
} 

和地址也是一個實體:

@Entity 
public class Address {...} 

堅持是否又保存其包含解決客戶?或者這是不可能的?這個想法基本上是由一個主要實體組成,其中的一些實體本身將存儲在單獨的表中。客戶的一些領域是獨一無二的,因爲我也希望爲這些數據提供客戶表。除非我錯過了它,否則我一直無法找到答案。這是我只是好奇的一件事,我現在不在一臺可以試用的機器上,所以我想先問一下。

在此先感謝。

+6

當然這是可能的。您剛剛重新創建了OneToOne(或ManyToOne)關聯。這當然包括任何關於JPA的教程/書籍。 –

回答

1

這是可能的和JPA的基礎知識。但是你必須定義實體類中的實體之間的關聯。

我推薦閱讀關於此主題的很好的教程,例如Java EE6 tutorial

1

你必須根據你的域模型2種選擇:

  • 從地址刪除的@Entity與@Embeddable

  • 註釋它映射在人地址:@OneToOne(級聯= {CascadeType.PERSIST})