我有以下表 兩個外鍵作爲主鍵
我將如何實現這個使用Hibernate註解?
當前代碼是:(剝離爲了簡潔)
用戶
@Entity
@Table(name = "user")
public class User implements java.io.Serializable {
@Id
@GeneratedValue
public Long getId() {
return id;
}
}
SocialNetwork
@Entity
@Table(name = "social_network")
public class SocialNetwork implements java.io.Serializable {
@Id
@GeneratedValue
public int getId() {
return id;
}
}
SocialProfile
@Entity
@Table(name = "social_profile")
public class SocialProfile implements java.io.Serializable {
@Id
@ManyToOne
@JoinColumn(name="user_id")
public User getUser() {
return user;
}
@Id
@ManyToOne
@JoinColumn(name="social_network_id")
public SocialNetwork getSocialNetwork() {
return socialNetwork;
}
}
顯然我的代碼現在不能正常工作。任何人都可以對此有所瞭解嗎?
您也可以考慮給你social_profile添加一個簡單的ID列,只是添加獨特的約束兩個FK在一起。這幾乎是相同的,但更容易處理,恕我直言 – stg
@stg感謝您的提示,我在social_profile表中添加了一個'id',並且使得這些字段是唯一的而不是空的。這種方式更簡單。 – prettyvoid