2010-05-25 81 views
2

我需要確定在休眠休眠子與外鍵關係

以下對象層次結構/數據庫關係從對象感一些幫助 - 代理從Person繼承和局從組織繼承。他們是從黨繼承了可以與它

alt text

數據庫相關聯的多個地址由

 
Agent 
-ID 
-Name 
-PartyID (references Party.ID) 
 
Agency 
-ID 
-Name 
-PartyID (references Party.ID) 
 
Address 
-AddrID 
-PartyID (references Party.ID) 
-Street 
 
Party. 
-PartyID 

+0

你能畫出用最少的僞代碼的類模型?從你的描述我不知道你想如何關係。 – 2010-05-25 16:39:53

+0

class Party {private BigInteger partyID ...} class Organization extends Party {private ....} class Person extends Party {...} class Agency extends Organization {...} class Agent extends Person {。 ..} – shikarishambu 2010-05-25 19:07:01

+0

我已經添加了一個類圖。如果此圖不準確,請隨時解決。順便說一句,你使用註釋或hbm.xml? – 2010-05-25 20:45:31

回答

4

像下面可能是一個開始

@Entity 
public class Party { 

    @Id 
    private BigInteger partyID; 

    private String name; 

    @OneToMany(mappedBy="party") 
    private Set<Address> addresses; 

} 

@Entity 
public class Organization extends Party {} 

@Entity 
public class Person extends Party {} 

@Entity 
public class Agency extends Organization {} 

@Entity 
public class Agent extends Person {} 

@Entity 
public class Address{ 

    @Id 
    private BigInteger addressID; 

    @ManyToOne 
    private Party party; 

    private String street; 
}