我知道使用HQL查詢可以很容易地解決這個問題,但是我最好只是讓Hibernate爲我處理一些OneToMany屬性。Hibernate:兩個OneToMany屬性,由具有不同列的相同實體映射
讓我證明什麼,我想我的域模型看起來像在僞代碼:
Game
Long GameID
Team HomeTeam
Team AwayTeam
@OneToMany(mappedBy="team")
Set<TeamPlay> HomeTeamPlays
@OneToMany(mappedBy="team")
Set<TeamPlay> AwayTeamPlays
表結構是相似的,有兩個外鍵都指向隊表在遊戲桌上。顯然,如果只有一個外鍵,那麼它將代表一個真正的一對多關係,但實際上我想要的是對於相同實體子類型的兩個雙向一對多特性。
我不相信使用@Where註釋會工作,因爲它需要一個常量,並且@JoinColumn在這裏是不允許的。如果不可能,那就沒問題,我只是想從別人那裏得到它。
問題是什麼?你的問題是什麼?只是不要爲兩個關聯使用相同的mappedBy字段。 –