2011-01-10 70 views
1

的模型我在冬眠新的,我想解決一些疑問。起初,我一直在尋找某種實體的,我想了解如何映射我的實體,但我沒有找到什麼使「comum」,簡單的理解,我需要這方面的幫助。休眠 - 類

我有一類名爲「客戶端」和另一個名爲「住址」等所謂的「公司」,客戶有公司地址的列表,而且只有一次,但我怎麼映射呢?

我說,當使用@ManyToOne(通過映射)或其他種類的?

我的類客戶:

@Entity 
public class Client { 
    @Id 
    @GeneratedValue 
    private long id; 
    private String name; 
    //Adress 
    private List<Adress> adress; 
} 

我的班級地址:

@Entity 
public class Adress{ 
    @Id 
    @GeneratedValue 
    private Long id; 
    private String pobox; 
} 

我公司類:

@Entity 
public class Company{ 
    @Id @GeneratedValue 
    private Long id; 
    private String name; 

    //Adress 
    private Adress adress; 
} 

回答

2

的地址通常是一對一的。也就是說,一家公司不會與另一家公司分享地址,是嗎?所以你可以嘗試:

@OneToOne(cascade = CascadeType.ALL) 
    @JoinColumn(name="address_id") 
    private Adress address; 
+0

這真的太棒了! – 2011-01-10 02:21:10