我總是根據關係背後的邏輯使用@OneToOne
和@ManyToOne
關係 - 如果每一端只有一個實體,那麼它是一對一的。如果另一方的實體可能在這一邊有多個相應的實體,那麼它是多對一的。即一個學生只有一本學生用書,而每本學生用書只屬於一個學生(一對一)hibernate(和JPA)以不同的方式處理@OneToOne和@ManyToOne嗎?
但是,我剛剛在我們的代碼庫中看到了幾個@OneToOne
註釋,它們實際上並不是一對一的,一。不知何故,這已經工作了很長一段時間,我不知道是否hibernate對待這些註釋是不同的?
如果在實體上有@OneToOne
,但是除此之外,它可能不會允許@OneToMany
映射另一邊?
你看過兩種情況下使用的DB約束嗎?也許在@ @ OneToOne的情況下是獨一無二的,但是在@ @ OneToMany的情況下呢? –
我剛剛檢查過 - 沒有創建唯一的約束。事情是 - 它的工作,這是奇怪的:) – Bozho
事實上,有一次它確實產生了一個獨特的約束。 – Bozho